我有以下三個弦樣本:否定的正則表達式模式匹配
day/Mon/done
day/Tue/done
day/Wed/done
如何使用否定其他兩個提取day/Wed/done
?下面不起作用。
/day/[^(Mon|Tue)]/done
我有以下三個弦樣本:否定的正則表達式模式匹配
day/Mon/done
day/Tue/done
day/Wed/done
如何使用否定其他兩個提取day/Wed/done
?下面不起作用。
/day/[^(Mon|Tue)]/done
它不是如何否定character classes工作 - 他們仍然解釋[..]
內的每個字符作爲單個字符。而且也沒有匹配
day/?/done
其中?
是隻有一個字符。無論使用任何一種技術,Regular expression to match a line that doesn't contain a word?(感謝,彼得!),或充分利用了一個事實,這些天來的第一個字符是唯一的:
day/[^MT]../done
你可以嘗試lookahead。
'day/(?!(Mon|Tue)).*/done'
OP *希望*匹配'Wed'(或者更確切地說,既不是'Mon'也不是'Tue')。 – usr2564301 2014-09-12 22:46:13
對不起。我更新了我的答案。 – plafratt 2014-09-12 22:48:11
如果你對這個頁面的「關聯」的右邊看,你可能會看到這樣的疑問:http://stackoverflow.com/questions/406230/regular-expression-to-match-string-不包含單詞?rq = 1 – Peter 2014-09-12 21:56:03
不是C問題 - 建議移除標記。 – chux 2014-09-12 22:11:08
感謝@Peter指向鏈接。 – adizone 2014-09-12 23:16:31