java - 使用. contains( )的關鍵字匹配的java字元串

  显示原文与译文双语对照的内容
93 3

String a ="Hello my name is Sap";



String b ="HelloisSamynamep";



String c ="Sap is my name";



String d ="Sap";



String keyword ="Sap";



當我使用 .contains() 時,這兩個字元串都是 true 。

它如何使 true 僅在第一個字元串中得到?

注意:在關鍵字前添加空格如果第一個單詞的關鍵字。 請幫助!

編輯: 添加了所有可能的條件

解決方案: 借助其他答案,我找到了滿足每個條件的解決方案


if (a.contains(""+key+"") || a.startsWith(key+"") 


 || a.equals(key) || a.endsWith(""+key))



正規表達式 會比這個快?

时间: 原作者:

65 5

可以將輸入 String 拆分為單詞,將它的轉換為 List,並在 List 上運行 contains:


Arrays.asList("Hello my name is Sap".split("")).contains("Sap")



原作者:
50 2

你可以簡單地使用 正規表達式 。 b 用於單詞邊界。


Pattern p = Pattern.compile("bSapb");



String a ="Hello my name is Sap";


Matcher m1 = p.matcher(a);


System.out.println( m1.find());//return true



String b ="HellomynameisSap";


Matcher m2=p.matcher(b);


System.out.println( m2.find());//return false



String c ="Hello Sap my name";


Matcher m3=p.matcher(c);


System.out.println( m3.find());//return true



String d ="Sap";


Matcher m4=p.matcher(d);


System.out.println( m4.find());//return true



74 2

只需嘗試以下


if(Str.startsWith("Sap") || Str.contains(" Sap")){


 <code>


}



71 2

"包含( )"應該工作。


String a ="Hello my name is Sap";


String b ="HelloisSamynamep";


String c ="Sap is my name";


String d ="Sap";


String keyword ="Sap";



System.out.println(a.contains(keyword));


System.out.println(b.contains(keyword));


System.out.println(c.contains(keyword));


System.out.println(d.contains(keyword));



Output -



true


false


true


true



如果我沒有錯,"。包含( ) 會在內部使用 正規表達式 。

...