前言

本文主要给大家介绍了关于python使用正则表达式的集合字符的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

在正则表达式里,想匹配一些字符中的一个,也就是说给出一个字符的集合,只要出现这个集合里任意的字符,都是成立的。比如[ab],就是将匹配任意出现a或b的字符。比如a[ab]+,它是贪婪模式,将会匹配所有是a后面的a或b的字符串,如abbaabbba。如果要改为非贪婪模式,要在后面添加?,如下面的例子:

示例代码

#python 3.6
#蔡军生
#http://blog.csdn.net/caimouse/article/details/51749579
#
from re_test_patterns import test_patterns

test_patterns(
 'abbaabbba',
 [('[ab]', 'either a or b'),
  ('a[ab]+', 'a followed by 1 or more a or b'),
  ('a[ab]+?', 'a followed by 1 or more a or b, not greedy')],
) 

结果输出如下:

'[ab]' (either a or b)


 'abbaabbba'
 'a'
 .'b'
 ..'b'
 ...'a'
 ....'a'
 .....'b'
 ......'b'
 .......'b'
 ........'a'


'a[ab]+' (a followed by 1 or more a or b)


 'abbaabbba'
 'abbaabbba'


'a[ab]+?' (a followed by 1 or more a or b, not greedy)


 'abbaabbba'
 'ab'
 ...'aa'

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

01-30 13:50