当我们想在正则表达式里某个位置上只匹配一个任意的字符时,可以使用句号(.)来实现,星号(*)是表0个或多个字符重复,例子如下:
#python 3.6
#蔡军生
#http://blog.csdn.net/caimouse/article/details/51749579
#
from re_test_patterns import test_patterns
test_patterns(
'abbaabbba',
[('a.', 'a followed by any one character'),
('b.', 'b followed by any one character'),
('a.*b', 'a followed by anything, ending in b'),
('a.*?b', 'a followed by anything, ending in b')],
)
深入浅出Numpy
五子棋游戏开发
http://edu.csdn.net/course/detail/5487
#python 3.6
#蔡军生
#http://blog.csdn.net/caimouse/article/details/51749579
#
from re_test_patterns import test_patterns
test_patterns(
'abbaabbba',
[('a.', 'a followed by any one character'),
('b.', 'b followed by any one character'),
('a.*b', 'a followed by anything, ending in b'),
('a.*?b', 'a followed by anything, ending in b')],
)
结果输出如下:
'a.' (a followed by any one character)
'abbaabbba'
'ab'
...'aa'
'b.' (b followed by any one character)
'abbaabbba'
.'bb'
.....'bb'
.......'ba'
'a.*b' (a followed by anything, ending in b)
'abbaabbba'
'abbaabbb'
'a.*?b' (a followed by anything, ending in b)
'abbaabbba'
'ab'
...'aab'
在这里采用?来取消贪婪模式。