正規表現のオンラインと私のJavaコードの間に2つの異なる結果があります。regexとjavaを介してファイルの一部を変更します。
私の入力テキスト:
Examples:
#DATA
|id|author|zip|city|element|
Odl data - Odl data - Odl data
#END
私はfoo
で(私の例では)Odl data - Odl data - Odl data
を変更します。
私の正規表現は次のとおりです。私はfoo
オンラインデモ
によってグループ1を変更したい
#DATA[\s\S].*[\s\S]([\s\S]*)#END
:
https://regex101.com/r/Nq9fas/2
私のJavaコード:
final String regex = "#DATA[\\s\\S].*[\\s\\S]([\\s\\S]*)#END";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
私は第一ラインキープしたい#DATAと#END betwinが、私の正規表現の変更すべてのデータ
https://regex101.com/r/Qllz0P/1 –