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

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

 火... [复制链接]
发表于 2012-2-24 12:24:55 | 显示全部楼层
像你们学习~
发表于 2012-2-24 17:47:37 | 显示全部楼层
看看那个神码
 楼主| 发表于 2012-5-3 22:07:31 | 显示全部楼层
回复 30# binghc


    能回复不?
发表于 2012-5-3 22:23:17 | 显示全部楼层
本帖最后由 binghc 于 2012-5-3 22:55 编辑

回复 78# afan


    好,可以了

哥们我今天闲来无事,又拿出这道自认为比较经典的题目研究了下,没想到还能有比5.x ms更快的代码:2.x ms,废话不多说,上图为证






(?m)(?>^[^A\r]*+(?>(?<![□○△])A[^A\r]*+)*?(?<=[□○△])A\V*|^\[([^]]+)](?=\h*?\v++(?>^[^[]\V*+\v++)*?^[^A\r]*+(?>(?<![□○△])A[^A\r]*+)*?(?<=[□○△])A))

本帖子中包含更多资源

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

×

评分

参与人数 3金钱 +160 贡献 +15 收起 理由
user3000 + 30 + 5 正则狠人非你莫属了!
lixiaolong + 50 + 5 厉害!学习了!!
afan + 80 + 5 学习了

查看全部评分

 楼主| 发表于 2012-5-3 22:33:13 | 显示全部楼层
回复 79# binghc


    好像漏了1条“Zh-zA□Am = km0CsszgrCSsDqcbHEMybUBo,RO”
发表于 2012-5-3 22:36:29 | 显示全部楼层
回复 80# afan


    没错,我看到了,正在修改……
发表于 2012-5-3 22:38:48 | 显示全部楼层
长见识了。。。。 这么长的正则。。。
发表于 2012-5-3 22:58:43 | 显示全部楼层
回复 80# afan


   改好了,貌似改了后又长了许多,比原来稍短一点点,也稍微慢了一点点,不过还是比原来快一点点
 楼主| 发表于 2012-5-3 23:02:24 | 显示全部楼层
回复 83# binghc


    没错了,慢也只有1ms左右的差别,效率已经极高了~
发表于 2012-5-3 23:18:57 | 显示全部楼层
做个记号,慢慢学习
发表于 2012-5-3 23:31:05 | 显示全部楼层
这断码还不会弄,学习
发表于 2012-5-5 14:07:56 | 显示全部楼层
本帖最后由 ndyzx 于 2012-5-5 14:09 编辑

回复 1# afan
A大麻烦请教一个问题,因为这问题可能对多数人来说很简单,所以不敢发求助贴,我搜了很久,试了很多次都没办法解决:
就是用正则,求字符串(字符串是从复合框中读出的)前三位字符中的数字,如:
1.2ABCD123,得12
12.aggfabdd,得12
133.2agdgage得133
我试过^\d+,在水木子的正则表达式测试工具中通过,但用如下语句无法完成。
$1='1.2ABCD123'
$2=StringRegExp ($1,"^\d+",3);
MsgBox(16, "测试",$2)
虽然用StringLen,StringIsDigit,StringMid配循环可以完成要求,但要10多行。我想请教用正则怎么解决,哎太菜了。
 楼主| 发表于 2012-5-5 15:24:47 | 显示全部楼层
回复 87# ndyzx
Local $Str = '1.2ABCD123'
;MsgBox(0, '原字符串', $Str)
Local $Test = StringRegExpReplace(StringRegExpReplace($str, '^(.{1,3}).*', '$1'), '\D', '')
MsgBox(0, '替换结果', $Test)
发表于 2012-5-5 15:43:45 | 显示全部楼层
回复 88# afan
谢谢A大,我好好再去看看,把它消化掉。
发表于 2012-5-5 15:50:24 | 显示全部楼层
學習 看看 ~~老實說連題目都看不大董.....可見自己的程度實在是不夠...........
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-22 11:58 , Processed in 0.091387 second(s), 15 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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