読者です 読者をやめる 読者になる 読者になる

GWTの正規表現(RegExp)でsオプションを指定したいとき

GWTでは正規表現にはRegExpクラスを使用するが、RegExpクラスはsオプション(シングルラインとして処理)が指定できない。
つまり、「.」は「\n」にマッチしない。

すべての文字と改行をマッチさせたいときは

[\s\S]

を利用するとよい。

参考:How to use JavaScript regex over multiple lines? - Stack Overflow

private MatchResult _matchSentenceBlock(String target) {
	String regex = "([\\s\\S]*?)_\\[([\\s\\S]+?)\\]_([\\s\\S]*)";
	RegExp pattern = RegExp.compile(regex, "g");
	return pattern.exec(target);
}