"""
模块:python3 reModule.findall().py
功能:python3 正则表达式。
参考:
https://www.runoob.com/python3/python3-reg-expressions.html
https://www.runoob.com/regexp/regexp-tutorial.html
"""
import re
# 一、pattern.findall()
# 1.匹配数字。
# 1.1.匹配所有数字。
pattern = re.compile(r'\d+')
# print(pattern) # re.compile('\\d+')
# print(type(pattern)) # <class 're.Pattern'>
result = pattern.findall('runoob 123 google 456 123')
print(result)
# ['123', '456', '123']
# 1.2.局部匹配数字。(切片[0,10(不包括)],再匹配)。
result = pattern.findall('run88oob123google456', 0, 10)
print(result)
# ['88', '12']
# 二、re.findall()
# 2.1.\b 是指匹配一个单词的边界。
# 单词的边界,指单词和空格间的位置 或 单词和特殊字符边界,比如 $,#… 等。
print("\n2.1.")
m = re.findall(r'o\b', 'hello nano$')
print(m)
# ['o', 'o']
s = "I am a good boy!"
# 匹配小写字母开头的单词。
result = re.findall(r'\b[a-z][a-zA-Z]*\b', s)
print(result)
# ['am', 'a', 'good', 'boy']