找回密码
 加入
搜索
查看: 3822|回复: 9

[系统综合] [已解决]au3正则不能“分组”吗,正则高手帮忙(看看这个例子)

  [复制链接]
发表于 2010-9-15 10:48:20 | 显示全部楼层 |阅读模式
本帖最后由 binghc 于 2010-9-18 17:06 编辑

wefwelfjewf192.168.2.59sakfdljsdf
现在要匹配其中的ip地址,为什么
用 \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} 可以
(\d{1,3}\.){3}\d{1,3} 这个却不行,结果显示 “2.”
为什么?

再看一例:
sdffds kitty kitty sdfjsfd
用\b(\w+)\b\s+\1\b 这语句匹配结果显示只有一个kitty
这又是为什么啊

au3的正则是不是不支持“分组”和“后向引用”?
发表于 2010-9-15 11:54:42 | 显示全部楼层
等待高手出现吧
发表于 2010-9-15 12:43:25 | 显示全部楼层
$Str = 'wefwelfjewf192.168.2.59sakfdljsdf'
$sR = StringRegExp($str, '(?:\d{1,3}\.){3}\d{1,3}', 1)
Msgbox(0, 0, $sR[0])

$Str = 'sdffds kitty kitty sdfjsfd'
$sR = StringRegExp($str, '\b(\w+)\b\s+\1\b', 2)
Msgbox(0, 0, $sR[0])
 楼主| 发表于 2010-9-15 13:41:05 | 显示全部楼层
怪了!
那为什么我用“水木子“的‘正则测试工具v4.0’显示一个“kitty”,一个是“2.”

水木子看到此贴,能不能解释一下为什么会这样!
下面是图片:
$Str = "wefwelfjewf192.168.2.59sakfdljsdf "
$Str2=StringRegExp($Str,"(\d{1,3}\.){3}\d{1,3}",2)

MsgBox(0,"",$Str2[0])

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2010-9-15 13:58:41 | 显示全部楼层
木子版版在养伤ing...
第一个应该是 (?:\d{1,3}\.){3}\d{1,3}
第二个应该用 StringRegExp 的标志 2,木子的都是3,所以如此
发表于 2010-9-15 15:54:05 | 显示全部楼层
样式不一样,结果也不一样
发表于 2010-9-17 10:09:51 | 显示全部楼层
(?: 不是不捕捉吗
 楼主| 发表于 2010-9-17 19:11:33 | 显示全部楼层
回复 7# liufenglg


    那是不捕捉匹配的内容,就是说后面不支持\1、\2之类的
发表于 2010-9-18 02:09:51 | 显示全部楼层
3是返回数组。。
发表于 2010-9-18 02:11:21 | 显示全部楼层
回复 1# binghc


    解决了问题请及时加注“已解决”字样。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-22 10:59 , Processed in 0.153079 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表