如果我有一個字符串str是:a>b
我用的是找到,如果字符串str有>
最好的方式做:
使用java,有什麼方法在字符串中查找單詞?
delimiter =">"
str.split(delimter)
或
str.contains(">")
還是正則表達式?實際上我更喜歡使用正則表達式,在這種情況下如何使用正則表達式?
感謝您的幫助
如果我有一個字符串str是:a>b
我用的是找到,如果字符串str有>
最好的方式做:
使用java,有什麼方法在字符串中查找單詞?
delimiter =">"
str.split(delimter)
或
str.contains(">")
還是正則表達式?實際上我更喜歡使用正則表達式,在這種情況下如何使用正則表達式?
感謝您的幫助
這將是
System.out.println("a>b".matches(".*>.*"));
但在這種情況下,我只想用contains
,一個人的容易去。實際上,你不需要完成整個模式定義的混亂。你可以打比賽。
str.matches(".*>.*");
String.indexOf()
返回指定的字符或字符串中第一次出現的字符串中的索引
你也可以使用
String.contains()
檢查,如果字符串包含字符的指定序列值
您可以使用indexOf(int ch)函數(在java.lang.String中找到)。它返回String中的字符位置或失敗時返回-1。 示例:
String s="a>b";
if(s.indexOf('>')!=-1) {
System.out.println("> is in there");
}
注意:它搜索第一次出現的charcter或子字符串。
我不認爲你應該在這裏使用正則表達式。但是,如果你想使用它,你可以嘗試這個功能。你可以調用if(getWordCount(「>」,「a> b」)> 0)S.o.p(「String contains>」);你可以調用if(getWordCount(「>」,「a」)。
感謝,
MAYUR沙阿(www.MayurShah.in)
我想你的意思m.find()。只有**整個**字符串匹配您的正則表達式模式(在您的示例中,b爲false),m.matches纔會返回true。 – 2011-03-27 05:48:44
好的,我在糾正它。既然你只是想知道是否有或沒有。 – bluefoot 2011-03-27 12:21:28