Regex 当第三部分中的第一个数字不同时,匹配连字符分割IP范围(记事本++)

Regex 当第三部分中的第一个数字不同时,匹配连字符分割IP范围(记事本++),regex,notepad++,Regex,Notepad++,所有IP范围都以示例中显示的方式写入,即使用连字符拆分 匹配: 109.240.40.0-109.240.84.255 84.250.86.0-84.250.90.125 75.123.49.0-75.123.50.243 109.240.125.0-109.240.137.255 84.250.155.0-84.250.255.125 75.123.215.0-75.123.240.243 不匹配: 109.240.40.0-109.240.45.255 84.250.86.0-84.250

所有IP范围都以示例中显示的方式写入,即使用连字符拆分

匹配:

109.240.40.0-109.240.84.255
84.250.86.0-84.250.90.125
75.123.49.0-75.123.50.243
109.240.125.0-109.240.137.255
84.250.155.0-84.250.255.125
75.123.215.0-75.123.240.243
不匹配:

109.240.40.0-109.240.45.255
84.250.86.0-84.250.88.125
75.123.45.0-75.123.46.243
109.240.125.0-109.240.129.255
84.250.155.0-84.250.158.125
75.123.215.0-75.123.216.243
因此,在IP地址范围的第三部分中,两位数部分的第一位数字以及三位数部分的前一位或两位数字必须不匹配。

好的,我自己做的:

^(\d{1,3}\.\d{1,3}\.\d{1})\d{1}\.\d{1,3}-(?!\1)\d{1,3}\.\d{1,3}\.\d{1}\d{1}\.\d{1,3}\r\n|^(\d{1,3}\.\d{1,3}\.\d{2})\d{1}\.\d{1,3}-(?!\2)\d{1,3}\.\d{1,3}\.\d{2}\d{1}\.\d{1,3}\r\n

你能发布你到目前为止试过的吗?…还有你的目标是哪种语言/regex方言?我的目标是Notepad++。我不喜欢正则表达式,所以我不认为有必要发布我的尝试,这些尝试都被标记为无效表达式。但好的,这里有一个尝试:\d{1,3}\.\d{1,3}\.\d{1}\d{1,3}-\d{1,3}\.\d{1,3}\\3\d{1}\.\d{1,3}\r\n试过:^\d{1,3}\.\d{1,3}\.\d{1}\d{1}\.\d{1,3}-\1\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\r\n它匹配由两个数字组成的第三部分不同的所有范围,即使只有第二个数字不同。这匹配吗?:1.2.34.56-1.2.44.56