在 Cisco 配置中寻找用户
Looking for users in Cisco configuration
我需要一个表达式来获取 cisco 中没有较低权限 0 或 1 的用户。
可以通过以下方式在配置文件中找到用户:
username myuser privilege 15 password 7 5345345345
所以,我正在尝试使用表达式:
(username.*privilege )(?!([01]))( password 7)
获取任何用户名具有“用户名权限”的所有行,后跟一组非 0 或 1 的字符,然后是“密码”和其他字符。
但是在一些在线测试器网页上测试我没有收到想要的结果。
我做错了什么?
非常感谢
您可以在 [01]\b
之后添加一个单词边界,当该断言为真时,您仍然需要使用 [0-9]+
来匹配数字
该模式从字面上匹配密码 7,但您也可以在此处使用 [0-9]+
来匹配数字。
.*\b(username.*privilege) (?![01]\b)[0-9]+ (password [0-9]+).*
注意,如果只想匹配整行,可以省略捕获组:
.*\busername.*?privilege (?![01]\b)[0-9]+ password [0-9].*
我需要一个表达式来获取 cisco 中没有较低权限 0 或 1 的用户。 可以通过以下方式在配置文件中找到用户:
username myuser privilege 15 password 7 5345345345
所以,我正在尝试使用表达式:
(username.*privilege )(?!([01]))( password 7)
获取任何用户名具有“用户名权限”的所有行,后跟一组非 0 或 1 的字符,然后是“密码”和其他字符。
但是在一些在线测试器网页上测试我没有收到想要的结果。 我做错了什么?
非常感谢
您可以在 [01]\b
之后添加一个单词边界,当该断言为真时,您仍然需要使用 [0-9]+
该模式从字面上匹配密码 7,但您也可以在此处使用 [0-9]+
来匹配数字。
.*\b(username.*privilege) (?![01]\b)[0-9]+ (password [0-9]+).*
注意,如果只想匹配整行,可以省略捕获组:
.*\busername.*?privilege (?![01]\b)[0-9]+ password [0-9].*