2017-04-06 148 views
-3

enter image description hereREGEX與2個字符串之間的任何字符匹配

我試過這與一個正則表達式測試儀,它的工作原理。但爲什麼我不能爲JAVA工作。 我希望能尋找neither..........nor

我想看看有多少東西neithernor在一個字符串:"Neither u or me are human"

我曾嘗試:

occurrence += sentence.split("(?i)\\Wneither.+nor\\W").length - 1; 

,但它不工作,因爲輸出System.out.print(occurrence)結果是0

我以爲\\W代表非單詞字符,而.+代表任何字符。

我怎樣才能得到一個occurrence結果1

+0

*這是行不通的*是沒有問題的說明,以及*任何解決方案*你還沒有解釋的一個問題是不是一個問題。你對這個正則表達式有什麼**特定的問題,以及你希望我們回答你的具體問題**? –

+0

在「你或我都不是人」中,「既不+也不」。還有至少1次出現的語法錯誤:-) – sprinter

+0

如果你正在尋找'既不ABC也不'(其中_ABC_是任何單詞),那麼你的''既不是你也不是我'是'給出的結果是正確的。如果字符串是「」你和我都不是人類「,那麼你可以期待1的結果,不是嗎?你的問題真的只是_「如何計算在句子」_「中使用了多少」既不「又有多少」和「? –

回答

1

你可以用這個數出現:

Pattern pattern = Pattern.compile("(neither|nor)", Pattern.CASE_INSENSITIVE); 
Matcher matcher = pattern.matcher("Neither u or me are human"); 

int count = 0; 
while (matcher.find()) 
    count++; 

System.out.println(count); 
+0

Asker更新了預期結果(更改了規則)。他們特別需要('既非'+'*'+'也不'),其中'*'是兩個單詞_neither_和_nor_之間的任何東西,或者至少是我的理解 –

相關問題