记事本++的正则表达式:行不包含特定模式
问题描述:
我有以下对象名单:记事本++的正则表达式:行不包含特定模式
type="user" N="ag12345" status="active"
type="user" N="he98745" status="active"
type="user" N="user1" status="active"
type="user" N="84566" status="active"
type="user" N="iu78965" status="active"
我需要找到标签“N”不匹配模式@@线### ##。换句话说,一个有效的用户必须被创建为两个连续的字母字符和5个数字。 正则表达式我要找应该显示我的台词:
type="user" N="user1" status="active"
type="user" N="84566" status="active"
我已经尝试了很多很多事情,但我似乎无法了解如何做到这一点。
我的一个尝试是: 查找内容:
type=user" N="(?![\l]{2}[\d]{5})" status="active"
也:
type=user" N="(?![\l]{2})(?![\d]{5})" status="active"
,但它不工作:(
答
你几乎没有使用。 [a-z]
而不是[\l]
,\l
不会匹配任何小写字母如果你想要处理大写和小写,那么使用[a-zA-Z]
。
type="user" N="(?![a-z]{2}\d{5}")[^"]*" status="active"
[^"]*
,否定它匹配任何字符,但不是"
,零次或多次字符类。
请注意,您的问题可以大大简化......这个问题没有太多用记事本++做的,它甚至少做一个“对象列表” ......你是只是试图找到不符合给定模式的行...我个人想要一种方法来寻找否定搜索匹配模式的行。但那只是我。 – UpAndAdam 2015-04-01 15:36:47
如果您正在尝试学习正则表达式,请尝试阅读http://www.grymoire.com/Unix/Regular.html – UpAndAdam 2015-04-01 15:37:36