正则表达式不等于字符串

Kie*_*ron 27 .net regex

我用正常的表情把头撞在墙上.我正在尝试定义一个表达式,它完全排除了这个文本'System'(不区分大小写),但是可以包含单词'System'来提供它不仅仅是那个.

例子:

  • 系统==无效
  • SYSTEM == INVALID
  • system == INVALID
  • syStEm ==无效
  • asd SysTem ==有效
  • asd系统asd ==有效
  • 系统asd ==有效
  • asd系统==有效
  • asd ==有效

Kob*_*obi 54

试试这个:

^(?!system$)
Run Code Online (Sandbox Code Playgroud)

或者这匹配整行:

^(?!system$).*$
Run Code Online (Sandbox Code Playgroud)

正则表达式在其开头有一个负向前瞻,如果"system"是整个字符串则不匹配.


Ama*_*osh 5

如果匹配则拒绝^system$(确保i标志为 ON)。

  • 这应该是第一个选择,或者说当然。我自然地(可能是错误地)认为OP无法做到这一点。 (2认同)