JAVA正規表現、matcher.findとmatcher.matchesの違い

1. find()メソッドはパターンに一致する入力文字列内の部分文字列を検索する部分一致です。一致した文字列にグループがある場合は、group()関数も使用できます。
一致()はすべてに一致すること、入力文字列全体をパターンに一致させることです。入力データが数値型であるか他の型であるかを確認する場合は、通常()に一致します。

2.パターンpattern = Pattern.compile( "。*?、(。*)");
マッチャーmatcher = pattern.matcher(result);
if(matcher.find()){
return matcher.group(1);
}

3 。詳細:
一致
マッチ(文字列の正規表現、入力されたCharSequence)ブールのpublic staticを
指定した正規表現と一致するように与えられた入力に試みをコンパイル。
この便利なメソッドを、
Pattern.matches(regex、input); の形式で呼び出します
。Pattern.compile(regex).matcher(input).matches();
パターンを複数回使用する場合は、毎回1回コンパイルした後で、このパターンを再利用します。このメソッドを呼び出す方が効率的です。
パラメータ:
正規表現-表現のコンパイルするための
入力を-文字列が一致する
例外:
PatternSyntaxException-式の構文が無効な場合、

find
public boolean find()は、パターンに一致する入力シーケンスの次のサブシーケンスを見つけようとします
このメソッドは、マッチャー領域の先頭から開始されます。メソッドの前回の呼び出しが成功し、その後マッチャーがリセットされていない場合は、前回の照合操作で一致しなかった最初の文字が開始されます。
一致が成功した場合、start、end、およびgroupメソッドを使用して詳細情報を取得できます。
matcher.start()は、文字列内の一致した部分文字列のインデックス位置を返します。matcher.end()は、文字列内の一致した部分文字列
の最後の文字のインデックス位置
返します。 Matching substring
戻り値:入力シーケンスのサブシーケンスがこのマッチャーのパターンに一致する
場合にのみ true。

元の記事を15件公開 賞賛7件 10,000件以上の表示

おすすめ

転載: blog.csdn.net/qq_40938267/article/details/95163476