找回密码
 加入
搜索
楼主: afan

[效率算法] [正则练习]找出所有含有关键字的行及其所属的字段名

 火... [复制链接]
发表于 2011-12-26 09:38:19 | 显示全部楼层
没明白 看看吧
发表于 2011-12-26 16:09:39 | 显示全部楼层
。。。看不懂
发表于 2011-12-26 20:21:55 | 显示全部楼层
有趣,不过我不会
发表于 2011-12-27 03:17:56 | 显示全部楼层
好吧。我看答案就好了。。。
发表于 2011-12-27 15:04:15 | 显示全部楼层
字符串为读取的一个ini文件(见附件, 这里下载不会扣除金钱),但该文件非ANSI格式,且大于32767个字符,因 ...
afan 发表于 2011-12-21 14:08



    请教老师,如果我只要其中最后面一行呢?
 楼主| 发表于 2011-12-27 15:19:20 | 显示全部楼层
回复 51# lnlyf


    昨天不是提过了 http://www.autoitx.com/forum.php ... amp;fromuid=7644923
发表于 2011-12-27 15:19:55 | 显示全部楼层
进来学习学习
发表于 2011-12-27 15:44:22 | 显示全部楼层
本帖最后由 lnlyf 于 2011-12-27 16:15 编辑
回复  lnlyf


    昨天不是提过了
afan 发表于 2011-12-27 15:19



    我是要含有关键字符的所有行中的最后一行,用其他办法,我可以得到,但正则效率高呀。
#include <Array.au3>
Local $Str = FileRead('Test_Ini.ini')
Local $Ts = TimerInit()
Local $Test = StringRegExp($str, '(?<=^|[\r\n])(?:\[(.+)\][^\[\]]*?)*\n(\V*□A\V*|\V*○A\V*|\V*△A\V*)', 3)
Local $line = StringRegExp($Test,'((\V+)\s*$)',3)
_ArrayDisplay($line, TimerDiff($Ts))

这样写不行,不知错在哪里,请老师指点
 楼主| 发表于 2011-12-27 16:06:45 | 显示全部楼层
回复 54# lnlyf


    数组最后一个元素不就是了 $Test[Ubound($Test) - 1]

评分

参与人数 1金钱 +20 贡献 +1 收起 理由
lnlyf + 20 + 1

查看全部评分

发表于 2011-12-27 16:14:08 | 显示全部楼层
回复  lnlyf


    数组最后一个元素不就是了 $Test
afan 发表于 2011-12-27 16:06



    谢谢afan老师,我的东西效率又提高了。
发表于 2011-12-27 16:42:58 | 显示全部楼层
学习了,还不懂正则呢
发表于 2011-12-28 10:39:25 | 显示全部楼层
说是练习 好像不一般简单啊
发表于 2011-12-28 23:19:00 | 显示全部楼层
回复 4# kevinch

能否学习一下。看看如何实现?
发表于 2012-1-6 09:38:54 | 显示全部楼层
字符串为读取的一个ini文件(见附件, 这里下载不会扣除金钱),但该文件非ANSI格式,且大于32767个字符,因 ...
afan 发表于 2011-12-21 14:08



    请教afan老师,寻找的字符能用变量表达吗?比如
(?<=^|[\r\n])(?:\[(.+)\][^\[\]]*?)*\n(\V*0106\V*)', 3)
找出1月6号有关的行,明天我要找出1月7号的,这里怎么用变量来表达要寻找的字符呢?
发表于 2012-1-6 09:57:40 | 显示全部楼层
afan版主 应该每天换个问题,让正则热闹起来
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-16 06:42 , Processed in 0.083836 second(s), 18 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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