Python 正则表达式中的字符集和范围

2023-04-02 00:00:00 python 字符集 正则表达式

在Python正则表达式中,字符集是指在一对方括号([])中的一组字符,它匹配方括号中的任何一个字符。字符集可以用来限制匹配字符的范围。

字符集中的元字符有以下几种:

普通字符:直接匹配字符集中的字符。例如,字符集[abc]将匹配字符a、b和c。
连字符(-):用于表示范围,例如[a-z]表示匹配任何小写字母。
补集(^):用于表示除了字符集中列举的字符以外的所有字符。例如,[^abc]将匹配任何非a、b和c的字符。
转义字符(\):用于转义字符集中的元字符。例如,[a-z[]将匹配小写字母a到z和左方括号字符([)。
以下是一些代码演示:

import re

# 匹配 pidancode.com 或 皮蛋编程
pattern = r'pidancode\.com|皮蛋编程'
text = '欢迎访问pidancode.com或者皮蛋编程。'
match = re.search(pattern, text)
print(match.group())  # 输出 pidancode.com

# 匹配任意数字字符和任意小写字母
pattern = r'[0-9a-z]'
text = 'pidaNcoDe123'
matches = re.findall(pattern, text)
print(matches)  # 输出 ['p', 'i', 'd', 'a', 'n', 'c', 'o', 'd', 'e', '1', '2', '3']

# 匹配除了字母p以外的所有字符
pattern = r'[^p]'
text = 'pidancode.com'
matches = re.findall(pattern, text)
print(matches)  # 输出 ['i', 'd', 'a', 'n', 'c', 'o', 'd', 'e', '.', 'c', 'o', 'm']

相关文章