这是一个HTML(实际上有一部分JS)文本存储为我的C#应用程序中的字符串:
...
var wanPara = new Array(
0, "00-1D-0F-EA-9C-91", "86.126.104.62", 3, "255.255.255.255", 0, 0, "86.126.104.62", 0, 1, 0, "213.154.124.1 , 193.231.252.1", "0 day(s) 07:40:24", "Connected", "", 0,
0,0 );
...
我想创建一个正则表达式,它将为我提供 86.126.104.62 的文本。 知识产权可能会有所不同,这就是为什么我想得到它。这个例子是86.126.104.62。 你能给我一些建议吗?
答案 0 :(得分:2)
简易版:
\bwanPara\b(.|\r|\n)*?\b(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\b
复杂版本:
\bwanPara\b(.|\r|\n)*?\b((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))\b
然后提取第二组。
一些有用的注释:
\b
- 字边界
(.|\r|\n)
- 外卡或回车或换行符
(.|\r|\n)*?
- 零或者更多的外卡或回车或换行,非贪婪的
\d
- 数字
\d{1,3}
- 一到三位数
\.
- 已转义.
[X-Y]
- 从X到Y的任何单个字符
来自here的IP正则表达式。