0

次の正規表現がありますが、一致せず、true に設定されていますか?

String whatever = "> blah, blah, blah";
boolean q = Pattern.matches(whatever, "^>+");  // this evaluates to false

文字列で正しく一致していますか? 私は何が欠けていますか?どうも!

4

1 に答える 1

3

"^>+"は、1 つ以上の のシーケンスと一致します>。で始まる文字列を照合するには>、次を使用します。

whatever.matches(">.+");  // .+ after >

String#matches()ではなく メソッドを使用してくださいPattern.matches()。メソッドの引数の順序が正しくありません。Pattern.matches()メソッドは、最初の引数として正規表現を取ります。2 番目の引数として渡します。

メソッドの使用中に正規表現を使用している間、アンカーは暗黙的であることに注意してくださいmatches()。それらを明示的に提供する必要はありません。

于 2013-10-07T22:35:04.847 に答える