2

これらの条件で出現する文字列を正規表現検索する必要があります。

  • 単語境界上
  • 大文字小文字を区別しません
  • 分音符号を無視する

私のコード:

CharSequence text = "One Twó";
String searchString = "two";
Pattern p = Pattern.compile("(?i)\\b"+searchString);
Matcher m = p.matcher(text);
while(m.find()) {
   int s = m.start();
   int e = m.end();
}

最初の 2 つの条件は、(?i)and\bパターン式によって達成されます。

発音区別記号を無視して、3 番目の目標を達成する必要があります。そのため、上記の検索文字列「two」は、テキスト内のテキスト「Twó」と一致します。これはどのように達成できますか?

4

1 に答える 1

1

完璧な正規表現ベースのソリューションがありません。あるかもしれないし、ないかもしれない。

ただし、回避策の提案:文字列を一致させる前に、分音記号を削除してみてください。

関連する質問:

于 2012-07-26T06:58:30.180 に答える