我有一个要检查的文件。大多数数字前面都带有@。我想查找所有在其前面没有@的数字。他们可能有一个空格,或者他们可能有另一个角色。我不确定,因为我还没有找到它们。
所以对于这段文字
第一@ 30行
第二条@ 40行
找到四个A4线
我想找到“ 4”。最后一行前面带有“ a”的那个。
这听起来很简单,但是使用RegEx101或Notepad ++时,我无法执行搜索。
我试过了[^@]\d+
,但是找到了30和40。我已经尝试[^\@]\d+
过相同的结果。如果我[^a]\d+
正确执行,则找不到“ a4”。因此很明显,@符号具有特殊的意义,但是我找不到与此相关的任何文档。
我如何进行搜索?
问题3
是不是@
。您正在搜索除以外的任何字符@
,后跟任意数量(非零)的数字。3
是不是的字符@
,并且0
是非零数字。因此,一场比赛。
您需要排除数字以及@
:[^@\d]\d+
。
注意:这仍然需要在数字前加上一个字符。您说您要输入不以开头的任意数字@
。如果数字在一行的开头,则它的前面不会有@
。但是,它也不会以其他任何字符开头,因此您需要调整正则表达式以使其匹配。
后面有一个负面的看法可以解决此问题:(?<![@\d])\d+
。这会寻找\d+
,除非以@
或其他数字开头。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句