2011-10-22 77 views
3

我已經設置的話。例如,查找單詞只包含給定的字符:正則表達式

abc, adb, acb, cab, abcc, abk, bacc 

我想找到的話,只有具有

ABC

所以,結果我需要的是

abc, acb, cab, abcc, bacc 

我需要找到這個使用常用表達。
誰能請幫助我。

+0

單詞'a'是否構成匹配? – JRL

+0

嘿,只是一個想法:也許你應該尋求幫助之前(http://www.regular-expressions.info/)上的正則表達式有點讀了]? – Nightfirecat

回答

4

正則表達式下面會發現只有在他們裏面ABC字符的所有單詞。

Pattern regex = Pattern.compile("\\b[abc]+\\b"); 
    Matcher regexMatcher = regex.matcher(subjectString); 
    while (regexMatcher.find()) { 
     // matched text: regexMatcher.group() 
     // match start: regexMatcher.start() 
     // match end: regexMatcher.end() 
    } 
+0

感謝您的幫助。 :) – SachiraChin

+0

@Sach歡迎您:d – FailedDev

+0

抱歉打擾你,但沒有任何其他辦法找到這種字符串,而不是使用正則表達式的?任何可用於此的算法。 – SachiraChin

3

不擔心的情況下爲一個簡單的例子

[AC] +

將之一或更多的字母的任意組合從AC匹配

[AFZ] +

將做同樣的,F,Z

除了考慮的情況下,你還願意要考慮什麼constitues一個「字」(其前後空格或WH成功atever)?

+0

Java正則表達式支持'\ b'來匹配單詞邊界。 (這裏的「字」是指「任何'\ w'匹配」,想必) – millimoose

+0

這將匹配abcbla blacbla等 – FailedDev

0
\\b[abc]+\\b 

\\b[a-c]+\\b 

[]表示character set,並+指1個或多個該組中的任何字符的repetitions\bword boundary,所以你只能匹配完整的單詞。

Example.

+0

這也將匹配「fooabc」或「無所謂」 – FailedDev

+0

@FailedDev贊成,我是在編輯的過程中,忘記了。 –

相關問題