Python 的 re
模块提供了对正则表达式的支持。本教程将深入讲解如何使用 Python 3 中的正则表达式。
1. 导入 re 模块
在开始之前,你需要先导入 re
模块。这个模块提供了对正则表达式的全部支持。
import re
2. 基本匹配操作
2.1 match() 方法
match()
方法用于查找字符串是否匹配正则表达式的模式,如果匹配成功,返回一个 Match
对象;否则返回 None
。
text = "Hello, Python!"
pattern = r"Hello"
matchObj = re.match(pattern, text)
if matchObj:
print("match --> matchObj.group() : ", matchObj.group())
else:
print("No match!!")
2.2 search() 方法
search()
方法与 match()
方法类似,但它不仅在字符串开头匹配,任意位置匹配都可以。
text = "Hello, Python!"
pattern = r"Python"
searchObj = re.search(pattern, text)
if searchObj:
print("search --> searchObj.group() : ", searchObj.group())
else:
print("Nothing found!!")
3. 正则表达式模式
3.1 . (匹配任意单个字符)
.
可以匹配任意单个字符,但不能匹配换行符。
text = "Hello, Python!"
pattern = r"."
print(re.findall(pattern, text))
3.2 * (匹配前面的子表达式零次或多次)
*
可以匹配前面的子表达式零次或多次。
text = "aaaab"
pattern = r"a*"
print(re.findall(pattern, text))
4. 正则表达式特殊字符集合
这些是常用的正则表达式特殊字符集合:
-
\d
:匹配任意数字。 -
\D
:匹配任意非数字字符。 -
\s
:匹配任意空白字符(包括空格、换行符等)。 -
\S
:匹配任意非空白字符。 -
\w
:匹配任意单词字符(等价于[a-zA-Z0-9_]
)。 -
\W
:匹配任意非单词字符。
以上只是一些基本操作,还有很多高级用法可以深入学习。希望这个教程能够帮助你理解 Python 3 中的正则表达式。如有疑问,欢迎随时咨询!