アポストロフィを除いて、スペースと非単語文字に基づいて分割して含めることを試みています。Java Regex:アポストロフィ以外の単語以外の文字に基づく分割
私はそれを分割して空白と非単語文字に基づいて含めることができましたが、単語以外の文字からアポストロフィを除外する方法を見つけることはできません。
これは...このコードサンプル上で実行
str.split("\\s|(?=\\W)");
...私の現在の正規表現です:...
program p;
begin
write('x');
end.
この結果を生成します。
program
p
;
begin
write
(
'x <!-- This is the problem.
'
)
;
end
.
これはほぼ正しいですが、これが結果であるようにアポストロフィをスキップすることです:
program
p
;
begin
write
(
'x' <!-- This is the wanted result.
)
;
end
.
UPDATE
としては、私が試した提案:
program
p;
begin
write(
'x'
)
;
end.
このあなたのために働いている: '([^ \\ W '] +)' – Toto
ないJava [サポート文字クラス減算](http://www.regular-expressions.info/charclasssubtract。 html)?あなたのケースに役立つ可能性があります。 – wpcarro
@Toto私はアポストロフィが効いていますが、他の特殊文字は含まれていませんでした:program mini begin write 'x' end –