2012-01-16 28 views
0

有沒有方法可以指定正則表達式不應包含另一個正則表達式的匹配?指定正則表達式的一部分不應包含其他正則表達式

哪個正則表達式(在此以Javascript樣式語法給出)將對應於正則表達式/(artwork|sheep|cattle|book|literature)(s)/i,但不包含/(sheep|cattle|artwork|literature)(s)/的匹配項?

+0

不清楚......你的意思是你想R1匹配而不是R2?什麼是用例? – fge 2012-01-16 19:17:58

+3

在我看來,像這樣的正則表達式是/ books/ – 2012-01-16 19:25:38

+0

我希望從第一個正則表達式中排除第二個正則表達式的匹配項。 – 2012-01-16 19:57:11

回答

1

如果/books/不是答案,那麼也許有負提前嘗試一下..這樣

=> /(?!(?:sheep|cattle|artwork|literature)(?:s))(artwork|sheep|cattle|book|literature)(s)/ 
>> re =~ 'books' 
=> 0 
>> re =~ 'bookxs' 
=> nil 
>> re =~ 'sheep' 
=> nil 
>> re =~ 'cattle' 
=> nil 
>> re =~ 'test' 
=> nil 
相關問題