このコードには一種の問題があります。
String[] paragraph;
if(paragraph[searchKeyword_counter].matches("(.*)(\\b)"+"is"+"(\\b)(.*)")){
.matches()
文字列内の特定の文字を使用して検索するのが間違っていない場合は、必要です.*
が、別の単語に一致させずに文字を検索する必要があります。たとえば、検索しようとしているキーワードは、 のような文字is
を含む単語と一致させたくありません。だから私は境界に使用しましたが、上記のコードは私にとってはうまくいきません。is
ship, his, this
\b
例:
String[] Content= {"is,","his","fish","ish","its","is"};
String keyword = "is";
for(int i=0;i<Content.length;i++){
if(content[i].matches("(.*)(\\b)"+keyword+"(\\b)(.*)")){
System.out.println("There are "+i+" is.");
}
}
ここで実現したいのは、 とのみ一致し、 とは一致しis is,
ないということhis fish
です。だから、英数字以外の文字やスペースの横にある文字でも一致させたいという意味でis
一致する必要があります。is, and is
上記のコードの問題は何ですか?
コンテンツの 1 つに大文字の例IS
があり、それを と比較するとis
、不一致になります。私が間違っている場合は修正してください。ソースの内容を変更せずに小文字を大文字に一致させる方法は?