我正在尝试匹配像这样的WWN模式的最终出现:
addr: 10:00:00:00:c4:a2:42:15
port: 10:00:00:00:c4:a2:42:15
addr: 10:00:00:00:c4:a2:42:16
port: 10:00:00:00:c4:a2:42:16
当我测试时:
port: (([0-9a-f]{2}[:-]){7}([0-9a-f]{2}))(?!.*port: ([0-9a-f]{2}[:-]){7}([0-9a-f]{2}))
它仅匹配10:00:00:00:c4:a2:42:15
。我认为我的正则表达式并不贪婪,但看起来我仍然缺少某些东西。
答案 0 :(得分:6)
.
与换行符不匹配。请尝试使用[\s\S]
:
port: (([0-9a-f]{2}[:-]){7}([0-9a-f]{2}))(?![\s\S]*port: ([0-9a-f]{2}[:-]){7}([0-9a-f]{2}))
^^^^^^