作者noroi (noroi)
看板RegExp
標題[問題] 請教各位一個正規運算式的寫法~
時間Fri Oct 19 13:48:00 2007
就是檢查輸入的字串, 不能出現符合 GM 開頭 然後後面接數字 例如 GM1 or GM005 之類
的, 請問這個要怎麼寫呢?
如果用一般字串函數去檢查可以很容易做到, 但是我想要用正規運算式去做, 但是正規運
算式一直找不到竅門, 寫不太出來...
請各位大大指導一下~
ps:沒有符合才為true 有符合為false 就是以下這個的相反 (^GM\d+){1}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.112.242
1F:推 MichaelHsin:如果不是非得在 regex 裡寫出來,就用上層程式做吧 10/19 15:53
2F:推 MichaelHsin:grep -v, perl !~, etc. 10/19 15:53
3F:推 chmate:negative lookahead assertion 但不是每種實作都有 10/19 22:45
4F:推 buganini:^[^G][^M][^0-9]+ 這樣? 10/20 01:41
5F:推 MichaelHsin:二樓++ 10/20 03:22
6F:推 MichaelHsin: /^(?!GM\d+)/ # perl 這樣就可以了 10/20 03:22