我不得不分離項Perl的正則表達式如何抵消一部分
D= d1| d2|...|dn
此刻
和
F=f1|f2|...|fn
我檢查這兩個正則表達式使用if語句看起來像這樣:
if (($text_to_search =~ $D) && ($text_to_search !~ $F))
我該如何否定F?是否有可能對整個不相交的情況使用負面查找或F的每一個分歧?
我應該是這樣的:
regexp = (d1)| (d2) | (d3) ... (dn) | NOT (f1) | NOT (f2) | ... | Not (fn)
括號是必要的否定模式,不僅是第一個單個字符,arn't他們?
編輯: 例如d是:a|b|c|d
,F爲:1|2|3
現在的行爲應該是這樣的:
input: "abc" --> accepted
input: "a" --> accepted
input: "abc1" --> Not accepted
input: "2" --> NOT accepted
input: "a2bc1" --> Not accepted
(input: "xyz999" --> does not match - shouldn't be accepted)
的F-間斷應該像「在看到這個時輸入序列不匹配「
您能告訴我們一些示例輸入和期望的行爲嗎? – Toto 2012-02-02 13:48:51
目前還不清楚你想要什麼。你是否想要像if語句那樣具有相同的功能,但只有一個條件/表達式? – Qtax 2012-02-02 14:19:14
FWIW,這個問題對我來說很明顯,我只是不想回答。 – daxim 2012-02-02 14:49:32