Contents
【Java】matches関数にて文字列の部分一致を判定する方法
この記事では、Javaのmatches関数で文字列の部分一致を判定する方法について解説します。
matches関数:Matcher オブジェクトのパターンが対象の文字列全体とマッチすれば true 、そうでなければ false
matches関数にて正規表現にて文字列が一致していればtrueを返します。
正規表現を使用していない場合、文字列の完全一致にてtrueを返却します。
Matcher m1 = p.matcher("test"); Matcher m2 = p.matcher("Test"); Matcher m3 = p.matcher("Javatest"); System.out.println(m1.matches()); System.out.println(m2.matches()); System.out.println(m3.matches()); // 実行結果 true false false
部分一致を判定したい場合は前後に「.*」をつける
部分一致を判定したい場合は前後に「.*」をつけることで判定可能となります。
String str = ".*test.*"; Pattern p = Pattern.compile(str); Matcher m1 = p.matcher("test"); Matcher m2 = p.matcher("javatest"); Matcher m3 = p.matcher("testjava"); Matcher m4 = p.matcher("javatestjava"); System.out.println(m1.matches()); System.out.println(m2.matches()); System.out.println(m3.matches()); System.out.println(m4.matches()); // 大文字・小文字は区別しない Matcher m5 = p.matcher("Test"); System.out.println(m5.matches()); // 実行結果 true true true true false
Javaの記事の一覧はJava にまとめてあります