Regex 要匹配名称的正则表达式模式
按照这种模式:Regex 要匹配名称的正则表达式模式,regex,Regex,按照这种模式: : Dog 172 Network type : Infrastructure Authentication : WPA2-Personal Encryption : CCMP BSSID 1 : FF:FF:FF:FF:FF:FF Signal : 91% Radio type
: Dog 172 Network type : Infrastructure Authentication : WPA2-Personal Encryption : CCMP BSSID 1 : FF:FF:FF:FF:FF:FF Signal : 91% Radio type : 802.11n Channel : 1 Basic rates (Mbps) : 1 2 5.5 11 Other rates (Mbps) : 6 9 12 18 24 36 48 54
我可以匹配狗,但如何匹配网络的全名
我试过一些东西,但我总是搭配其他东西。你可以用
^:\s+(\S+).*$
看
它会匹配的
-字符串的开头^
-冒号:
-1+空格\s+
-组1:一个非空白字符(\S.*)
-0+空格\s*
-文字字符串网络类型
结果在第1组。你的意思是你需要
狗172
<代码>^:\s+(\s.*?)\s*网络类型?我太笨了,我可以在代码中使用“向前看”,谢谢。为什么要向前看?你不能得到组1的值吗?请给我看一下你的代码,我发现你仍然在努力工作。我使用(?向前看比你的模式慢吗?@JohnDoe Lookaheads在你需要重叠匹配或无法访问组时是必要的。从初始正则表达式判断,你可以。
^:\s+(\S.*?)\s*Network type