找回密码
 加入
搜索
查看: 1820|回复: 3

[AU3基础] [已解决]求一个正则表达式

  [复制链接]
发表于 2010-6-29 20:34:01 | 显示全部楼层 |阅读模式
本帖最后由 elexy 于 2010-6-30 08:28 编辑

文本文件的格式大概是这样的

1423457  DR0751  12387416746  2010-01-01 15:30
1426557  DR0751  12387416746  2010-01-01 14:30
1424557  DR0751  12387416746  2010-01-01 12:30
1423457  DR0751  12387416746  2010-01-01 11:30
...............

我现在是想取每行前七个数字,我用的是 \d\d\d\d\d\d\d ,确实可以取到数,但是这样的正则表达式会连第三列的数12387416746也取了7个数字,请问怎么改表达式可以避免这种情况?

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2010-6-29 20:38:36 | 显示全部楼层
#include <Array.au3>
$Str = _
                '1423457  DR0751  12387416746  2010-01-01 15:30' & @CRLF & _
                '1426557  DR0751  12387416746  2010-01-01 14:30' & @CRLF & _
                '1424557  DR0751  12387416746  2010-01-01 12:30' & @CRLF & _
                '1423457  DR0751  12387416746  2010-01-01 11:30'

$sR = StringRegExp($str, '(?m)^(\d{7})\h', 3)
_ArrayDisplay($sR, '')
发表于 2010-6-29 22:18:50 | 显示全部楼层
新手!!学习了!!谢谢!!
 楼主| 发表于 2010-6-30 08:28:54 | 显示全部楼层
谢谢AFAN超版!!!!!!学习了!
发表于 2010-7-4 00:32:16 | 显示全部楼层
#include <Array.au3>
$Str = _
                '1423457  DR0751  12387416746  2010-01-01 15:30' & @CRLF & _
                '1426557  DR0751  12387416746  2010-01-01 14:30' & @CRLF & _
                '1424557  DR0751  12387416746  2010-01-01 12:30' & @CRLF & _
                '1423457  DR0751  12387416746  2010-01-01 11:30'

$sR = StringRegExp($str, "\b\d{7}\b", 3)
_ArrayDisplay($sR, '')
发表于 2010-7-8 15:04:57 | 显示全部楼层
正則表達式,學習了。^_^
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-10-3 14:31 , Processed in 0.101771 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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