[已解决]求助,如何利用正则表达式获取一段文本中重复次数最多的字符串
本帖最后由 35888894 于 2012-3-30 09:59 编辑求助,如何利用正则表达式获取一段文本中重复次数最多的字符串
比如$a="anbancjffsanvdaf"
我想要提出其中出现最多的“an” 和次数3
谢谢! 回复 1# 35888894
多给个$a="anbancjffsanvdaf"这样的例子. $a="manbanc12aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3123jffsanadzwdanxsedffdffdffdffdffdffvdaf" 这个里面重复最多的应该是aa $a="manbanc12aaa3123jffsanadzwdanxsedffdffdffdffdffdffvdaf"
这个应该是dff 这个貌似不能用正则搞定吧?能搞定的话就太牛逼了! 这个太难了! 回复 1# 35888894
这个不能用正则吧
反正我的正则水平是认为不可能的事了 用正则也不可能一两次搞定,至少牵涉到数值对比。
另外 $a="anbancjffsanvdaf" 重复最多的为什么不是“a” 而是 “an”? 用正则也不可能一两次搞定,至少牵涉到数值对比。
另外 $a="anbancjffsanvdaf" 重复最多的为什么不是“a” ...
afan 发表于 2012-3-29 23:16 http://www.autoitx.com/images/common/back.gif
这个可以理解他的字符串的意思是两个或两个以上的字符组合,单单一个‘a’,就叫字符了
不知道为什么他一定要定在只用正则来干:正则是非常有用的,正则不是万能的 用正则也不可能一两次搞定,至少牵涉到数值对比。
另外 $a="anbancjffsanvdaf" 重复最多的为什么不是“a” ...
afan 发表于 2012-3-29 23:16 http://www.autoitx.com/images/common/back.gif
不过,我想了下,这个用什么算法好点
现在能想到的:后缀树,KMP算法,二分长度后hash之
我没有实践后,个人估计后缀树效率高点 回复 10# happytc
“正则是非常有用的,正则不是万能的” 同意~
不过这里用正则来开路应该还是比较便利的。 不过,我想了下,这个用什么算法好点
现在能想到的:后缀树,KMP算法,二分长度后hash之
我没有实践 ...
happytc 发表于 2012-3-29 23:32 http://www.autoitx.com/images/common/back.gif
毕竟是学编程的,说的我一概不知…不如弄点上来学学,比较下效率,让我开开眼~ ^___^ 这个可以理解他的字符串的意思是两个或两个以上的字符组合 ...
happytc 发表于 2012-3-29 23:29 http://www.autoitx.com/images/common/back.gif
如果不确定“两个或两个以上的字符组合”到底是几位,那无疑是位数越低的重复次数越高。 毕竟是学编程的,说的我一概不知…不如弄点上来学学,比较下效率,让我开开眼~ ^___^
afan 发表于 2012-3-29 23:35 http://www.autoitx.com/images/common/back.gif
呵,A老大,你逗我吧,不可能不知道Hash(程序员面试经常有它,A版不可能不知),KMp之类的吧
一般人处理字符串,可能都是用简单的暴力算法,反正让机子“一只绵羊,二只绵羊……”地慢慢数,若效率太低,就来个Hash了。后缀树(组)是高级数据结构,其实也就是Trie树(字典树)一个发展而已。
象很多破rar密码的软件,大多数用暴力法,我看到少部分用的就是字典树来破。
今晚喝了点酒,头脑晕着呢,等清醒了有空时,我来试试用au3写写。好久没有写au3的代码了,快忘了
页:
[1]
2