2

進行中の私の作業を参照してください RegExp Ltd[.'s]{0,2} http://rubular.com/r/1FZvA9Nlul

私はこのリストに対してそれを実行しています:

Ltd's
Ltd.
Ltd
LtdTestTEst
Ltds
sdfTestLtd

sdfTestLtd現在の RegExp が一致するとが一致しないように RegExp を作成する方法LtdTestTEst

さらに明確にする。

上記のリストを Java の String.matches() メソッドに渡し、次のパターンに対してのみ true を返すようにします。

Ltd's
Ltd.
Ltd
Ltds
4

5 に答える 5

5

これはあなたの例と正確に一致するはずです: ^Ltd('?s|\.)?$

于 2013-01-03T19:24:26.377 に答える
4

^先頭に aを$、最後に a を付けます。

http://rubular.com/r/F2VQUUvWLf

于 2013-01-03T19:19:20.290 に答える
3

その必要はありません。

文字列の^ $開始/終了を示す特殊文字は、String.matches()Java では (他の言語の他の検索/一致演算子とは逆に、また Rubular ツールとは逆に)完全な文字列に一致するため、または同等の方法を使用する場合、通常 Java では必要ありません。

   System.out.println("xHello".matches("Hello"));
   // false: no match
   System.out.println("xHello".matches(".*Hello"));
   // true: match
   System.out.println("sdfTestLtd ".matches("Ltd[.'s]{0,2}"));
   // false: no match
于 2013-01-03T19:23:14.213 に答える
2

^を先頭に置くだけです。出力の仕組みに戸惑うかもしれません。

ウィンドウに書き込んだものはすべて印刷されているように見えますMatch result:が、一致するものだけが強調表示されます。

文字列の末尾も制御したい場合は$、そのために使用できます

于 2013-01-03T19:20:52.247 に答える
0

この正規表現を使用 ^Ltd[.'s]{0,2}$

于 2013-01-03T20:15:31.963 に答える