回答
試試這個:
^(?!.*DontMatchThis).*$
請解釋一下。這是如何工作的? – bikashg 2013-09-02 08:43:18
@bikashg:看到這裏:http://stackoverflow.com/a/11125488/47190 – 2013-10-07 09:56:55
正則表達式匹配不包含特定模式的字符串
(?s)^(?!.*DontMatchThis).*$
如果使用未經(?s)
模式(這是一個在線版本RegexOptions.Singleline
標誌使.
匹配一個換行LF符號以及所有其他字符),DontMatchThis
將只在第一行被搜索,並且只有沒有LF符號的字符串將與匹配。
圖案的詳細資料:
(?s)
- 一個DOTALL /單線修飾使得.
匹配任何字符^
- 字符串錨開始(?!.*DontMatchThis)
- 一個negative lookahead如果有任何0或檢查更多字符(匹配貪婪.*
子模式 - 注意懶惰.*?
版本(如果DontMatchThis
預計會接近字符串開頭,則可能會更快地完成作業)(接下來是DontMatchThis
.*
- 任何零個或多個字符儘可能多,最多$
- 字符串結尾(請參閱錨字符:美元($
))。
這是接受答案的好補充。 – VMAtm 2016-11-19 02:10:14
- 1. 正則表達式匹配字符串不包含其他子
- 2. 正則表達式匹配包含子字符串,但不包括子字符串的字符串
- 3. 包含正則表達式匹配的拆分字符串
- 4. 正則表達式匹配包含括號的字符串
- 5. 正則表達式,匹配的字符串也包含括號
- 6. 正則表達式僅匹配不包含特定字符的字符串
- 7. 正則表達式匹配字符串
- 8. 正則表達式匹配字符串
- 9. 正則表達式匹配字符串
- 10. 正則表達式匹配字符串
- 11. 正則表達式匹配字符串
- 12. 正則表達式匹配字符串
- 13. 正則表達式匹配字符串
- 14. 正則表達式匹配字符串
- 15. 正則表達式字符串包含
- 16. 檢查字符串是否包含正則表達式匹配
- 17. 正則表達式/ Perl來匹配包含字符串
- 18. 重複字符匹配正則表達式匹配字符串
- 19. 正則表達式的字符串不包含兩個不同的字符串
- 20. 正則表達式包含字符串,不包含另一個
- 21. 匹配匹配字符串的正則表達式的子串
- 22. 必須包含字符串中所有字符的正則表達式匹配
- 23. 正則表達式正則表達式匹配字符串
- 24. 如何將某個字符串與正則表達式匹配?
- 25. 正則表達式匹配的字符串,如果該字符串不包含特殊字符
- 26. 正則表達式匹配不包含數字的5位子字符串
- 27. 正則表達式:不匹配字符串的匹配順序
- 28. 哪個正則表達式查找不包含子字符串的字符串?
- 29. 正則表達式匹配某些字符串模式
- 30. C#正則表達式匹配字符串末尾的數字
你爲什麼要用正則表達式來做這件事,而不是使用String.IndexOf? – 2009-08-23 10:54:22
因爲有時你的正則表達式是在配置中,你不能改變代碼。或者因爲你需要它作爲另一個更復雜的正則表達式的子表達式。或者任何一種原因。你可能會問:「你爲什麼不通過解釋性舞蹈的媒介讓你的貓把你的文本模仿給你?」。有時你只是沒有你的貓。 – 2015-01-06 17:55:36