abcabc8759 发表于 2009-10-11 19:26:57

又一个正则表达式

本帖最后由 abcabc8759 于 2009-10-11 23:17 编辑

****************************
捕获自:常规
捕获时间戳:2009/10/11 18:51:47
****************************
注册到:
   QQ网吧
   技术支持:68543561
   76481-OEM-2449187-25775
****************************

我使用了:StringRegExp($PCtxt,"(.*)注册到(.*)25775
不成功!
后来只能使用:StringRegExp($PCtxt,"技(.*)561")
提取到 = 术支持:68543

请问如何把:注册到.....25775 这些内容提取出来?谢谢!

pusofalse 发表于 2009-10-11 20:05:17

$aVal = StringRegExp($PCtxt, "(?U)(注册到:.*\n(?:.+\n)*.*25775)", 3)
Msgbox(0, '', $aVal)

afan 发表于 2009-10-11 20:11:49

向pusofalse老师学习~ 或者这样:$PCtxt = '****************************' & @CRLF & _
        '捕获自:常规' & @CRLF & _
        '捕获时间戳:2009/10/11 18:51:47' & @CRLF & _
        '****************************' & @CRLF & _
        '注册到:' & @CRLF & _
        '   QQ网吧' & @CRLF & _
        '   技术支持:68543561' & @CRLF & _
        '   76481-OEM-2449187-25775' & @CRLF & _
        '****************************'
MsgBox(0, '源字符串', $PCtxt)
$str = StringRegExp($PCtxt, '(注册到:(\s+.+){3})', 3)
If Not @Error Then MsgBox(0, '匹配到的字符串', $str)

abcabc8759 发表于 2009-10-11 23:16:56

谢谢各位的热心帮助,让我对正则表达式又有了新的认识!
页: [1]
查看完整版本: 又一个正则表达式