找回密码
 加入
搜索
查看: 3267|回复: 5

[IE类操作] 请教一个正则。

  [复制链接]
发表于 2014-6-17 09:38:10 | 显示全部楼层 |阅读模式
我要提取    丁玉上    三个字   ,怎么写正则

$str = "                <td ><center>                                                         丁玉上                                                                                                                 </center></td>"

$array = StringRegExp($str, '<center>(?x.)</center>', 3)
For $i = 0 To UBound($array) - 1
    MsgBox(4096, "正则测试 标志值 2 - " & $i, $array[$i])
Next
发表于 2014-6-17 09:58:33 | 显示全部楼层
哪来的?X呀?
用如下正则试试:<center>\h+(\H+)
发表于 2014-6-17 10:07:13 | 显示全部楼层
$str = "                <td ><center>                                                         丁玉上                                                                                                                 </center></td>"

$array = StringRegExp($str, '(?<=<center>)\h*([^<]+?)\h*(?=</center>)', 3)
For $i = 0 To UBound($array) - 1
    MsgBox(4096, "正则测试 标志值 2 - " & $i, $array[$i])
Next
发表于 2014-6-17 16:11:54 | 显示全部楼层
回复 3# 水木子


    你好 有一个问题想不通 你的这个正则表达式中为什么要用\h呢?用这个话不就是需要匹配空白符了么?但是测试后还必须用\h
有点想不通啊 望指点
发表于 2014-6-17 21:51:16 | 显示全部楼层
回复 4# cumtljj

你理解错了,表达式所写的,并不一定就是想要得到的结果。

我这个表达式其实就是对需要得到的结果进行说明,告诉程序,我要的结果“前后可能存在空白符,但是我需要输出的结果并不包含空白符。”
发表于 2014-6-21 17:46:04 | 显示全部楼层
回复 5# 水木子


    佩服,想了一下,才看明白。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-5 02:31 , Processed in 0.071194 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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