回答
试试这个:
^(?!.*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