Python论坛  - 讨论区

标题:Re: [python-chinese]一个匹配的问题

2004年02月27日 星期五 20:21

slackgg slackgg at 163.com
Fri Feb 27 20:21:08 HKT 2004

意思是一个字符串里必须包含你那三个字符吗?

> 大家好:
>  
> 我想解决这样一个问题:有三个字符串:abc, xyz, 123, 从一个字符串集中选出可以完全由这三个字符串组合而成的字符串.  组合就是数学上组合的意思,比如abc, abcxyz, abc123xyz......,
>  
> 字符串集的例子象这样:
>                                  abcxyz123
>                                  abcxyz
>                                  abc
>                                  123
>                                  abcd
>                                  1234
>                                  a
>  
> 按照题意, 后面三个字符串都不可以。
>  
> 在实际环境中, 面对的是一个非常大的集合,要考虑算法的高效。
>  
> 我试图用正则表达式解决这个问题, 但是想不出来高效的正则表达式,
>  
> 比如这样一个正则表达式,(abc)*(xyz)*(123) 只能找到那些与这个排列次序相同的字符串, 要找到所有的得考虑所有的排列情况。 
>  
> 让我总结一下, :) ,我觉得正则表达式可以表达字符的排列,但是不能表达字符的组合。
>  
> 不知道大家有什么好办法, 不用正则表达式也可以.
>  
> 多谢了!
>  
>  
>  
>  
>  
>                                 
>                                  
>  
>  
>  
>  
>  
> 
> 
> 
> ---------------------------------
> Do You Yahoo!?
> 完全免费的雅虎电邮,马上注册获赠额外60兆网络存储空间
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
网易VIP收费邮箱两周年超值优惠! 满1赠6!!           http://vip.163.com

中国最大的免费邮箱在等你 25兆空间4兆附件!      http://mail.163.com

点击网易泡泡惊喜无限 全免费手机短信任你发!      http://popo.163.com

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2004年02月28日 星期六 09:23

Who Bruce whoonline at msn.com
Sat Feb 28 09:23:44 HKT 2004

这三个字符串总共也只能构成23种组合,完全可以把它们放到一个列表L中,然后对目
标字符串S用find方法就可以了。如果原始的字符串较多,如123,abc,def,hij,则可以
用嵌套循环的方法得到L。没必要用正则表达式。


>From: huiming lee <stary_night_lee at yahoo.com.cn>
>To: python-chinese at lists.python.cn
>Subject: [python-chinese] 一个匹配的问题
>Date: Fri, 27 Feb 2004 16:44:27 +0800 (CST)
>
>大家好:
>
>我想解决这样一个问题:有三个字符串:abc, xyz, 123, 从一个字符串集中选出可以
完全由这三个字符串组合而成的字符串.  组合就是数学上组合的意思,比如abc, 
abcxyz, abc123xyz......,
>
>字符串集的例子象这样:
>                                  abcxyz123
>                                  abcxyz
>                                  abc
>                                  123
>                                  abcd
>                                  1234
>                                  a
>
>按照题意, 后面三个字符串都不可以。
>
>在实际环境中, 面对的是一个非常大的集合,要考虑算法的高效。
>
>我试图用正则表达式解决这个问题, 但是想不出来高效的正则表达式,
>
>比如这样一个正则表达式,(abc)*(xyz)*(123) 只能找到那些与这个排列次序相同的
字符串, 要找到所有的得考虑所有的排列情况。
>
>让我总结一下, :) ,我觉得正则表达式可以表达字符的排列,但是不能表达字符
的组合。
>
>不知道大家有什么好办法, 不用正则表达式也可以.
>
>多谢了!
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>---------------------------------
>Do You Yahoo!?
>完全免费的雅虎电邮,马上注册获赠额外60兆网络存储空间
>_______________________________________________
>python-chinese mailing list
>python-chinese at lists.python.cn
>http://python.cn/mailman/listinfo/python-chinese

_________________________________________________________________
享用世界上最大的电子邮件系统― MSN Hotmail。  http://www.hotmail.com  



[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号