比如匹配不以a开头的结果:^[^a]
作为定位符时, ^
表示字符串的开始, $
表示字符串的结束
需要注意的是: 不要将 ^ 的这种用法与中括号表达式内的用法混淆 在中括号中使用^时, 表示不匹配某个字符, 比如[^a]
表示不匹配a
这个字符,比如:
被匹配的词是crashType
,那[^a]
就就能匹配到c
、r
、s
、h
、 T
、 y
、 p
、e
这几个字符
举例说明:
Lua,2022-07-04 17:42:26,SM-S908B,0de6ba017a6c19f9,"NullReferenceException: Object reference not set to an instance of an object."
Lua,2022-07-04 17:49:20,Pixel 6,e59014ff657c3ee3,"ArgumentNullException: Value cannot be null.
上面内容中:
-
[^ArgumentNullException]
匹配的内容是 除了ArgumentNullException
之外的任意字符,注意是字符,匹配的内容为:
L
、u
、a
、 ,
、 2
、 0
、 2
、 2
、 -
、 0
、 7
、 -
、 0
、 4
… - 不以Lua 或者 Java开头的行:
^[^(Java|Lua)]
- 匹配不包含
ArgumentNullException
的行要这样写:^((?!ArgumentNullException).)*$