作者eaden (evenrain)
看板Python
标题[问题] 符合多个正规表示式
时间Mon Jun 3 18:09:23 2013
问题是这样的,我有一堆字串以及多个正规表示式,
我希望可以透过简单的方式知道哪个字串符合哪个正规表示式,
且正规表示式间是有优先顺序的,
我目前想到的解法是这样 (两个网址是一样的 code XD)
http://pastie.org/7999821
http://chopapp.com/#ksu6oyv4
结果会是
aabbccdd is level 4
aaabccdd is level 3
bbccaaaaa is level 1
bbccddee is not match
12345678 is not match
不过一来这样做表示式的顺序很重要,二来是程式看起来不太直觉...
不知道有没有比较聪明一点的写法?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.190.212
2F:推 ck574b027:如果不想照顺序写那你就必须全部跑过,效率低,不计较 06/03 19:35
3F:→ ck574b027:的话很奇怪,而且我觉得有顺序的东西写起来也照顺序比较 06/03 19:42
4F:→ ck574b027:直觉,如果你的不直觉是指挤在一行,那像1f放dict就好了 06/03 19:44
5F:推 darkgerm:想让 re 有可读性可以搭配 re.VERBOSE flag 06/03 23:56
7F:→ eaden:感谢楼上各位~ ^^ 06/04 01:17
8F:→ swpoker:目标字串的排列有某些规则吗?还是乱乱排阿 06/04 09:11
9F:→ eaden:字串的排列没有规则 ^^ 06/05 18:17
10F:→ swpoker:暴力+程式可读性 XD 或许随机或是机率不知道效率会好点吗 06/06 16:05