各行の先頭にマッチさせたい場合

マルチラインモードを使う。

String str = "def\nabc";
String regex = "^abc";
Pattern p = Pattern.compile(regex, Pattern.MULTILINE);
Matcher m = p.matcher(str);
if (m.find()){
System.out.println("マッチしました");
}else{
System.out.println("マッチしません");
}
文字列の先頭や末尾などの位置にマッチするパターンを記述する
正規表現では文字列の先頭や末尾、単語の境界など文字そのものではなく位置にマッチするメタ文字が用意されています。例えば文字の先頭とマッチするメタ文字を使用すれば、そのあとに記述したパターンが文字の先頭から始まっている場合だけマッチさせることが...
タイトルとURLをコピーしました