正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多编程语言和工具中,正则表达式都被广泛应用于文本搜索、替换、分割和校验等操作。
正则表达式由普通字符(例如字母和数字)以及特殊字符(称为"元字符")组成。这些元字符用于构建更复杂的模式,如:
.
:匹配除换行符以外的任意字符*
:匹配前面的子表达式零次或多次+
:匹配前面的子表达式一次或多次?
:匹配前面的子表达式零次或一次{n}
:匹配确定的n次()
:标记一个子表达式的开始和结束位置[]
:字符集合,匹配所包含的任意一个字符[^]
:负值字符集合,匹配未包含的任意字符|
:匹配该符号前后的任一表达式\
:转义字符,用于取消特殊字符的特殊含义以下是一个使用Python的re
模块通过正则表达式提取子字符串的示例:
import re
text = "Hello, my email is example@example.com and my phone number is 123-456-7890."
email_pattern = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
phone_pattern = r'\d{3}-\d{3}-\d{4}'
email_match = re.search(email_pattern, text)
phone_match = re.search(phone_pattern, text)
if email_match:
print("Extracted Email:", email_match.group())
else:
print("Email not found.")
if phone_match:
print("Extracted Phone Number:", phone_match.group())
else:
print("Phone number not found.")
企业创新在线学堂
云+社区技术沙龙[第6期]
云+社区沙龙online[新技术实践]
云+社区技术沙龙[第7期]
Elastic 中国开发者大会
Elastic 中国开发者大会
云+社区技术沙龙[第25期]
云+社区技术沙龙[第16期]
领取专属 10元无门槛券
手把手带您无忧上云