正则表达实验python
时间: 2023-10-11 12:12:49 浏览: 94
作为AI助手,我无法进行实验,但我可以提供一些基本的正则表达式知识和示例代码:
正则表达式是一种用来匹配字符串的表达式,它由普通字符和元字符组成。其中,普通字符表示它本身,而元字符则有特殊的含义。
示例代码:
在Python中,可以使用re模块来使用正则表达式。例如,以下代码可以从一个字符串中提取出所有的数字:
```
import re
s = "There are 123 apples and 456 bananas."
nums = re.findall('\d+', s)
print(nums)
```
输出结果为:
```
['123', '456']
```
在上面的代码中,使用了re.findall函数来查找所有匹配的字符串,并将结果存储在一个列表中。正则表达式'\d+'表示匹配一个或多个数字。
常用的正则表达式元字符包括:
- . :匹配任意字符(除了换行符)
- \d :匹配数字
- \w :匹配字母、数字或下划线
- \s :匹配空格、制表符、换行符等空白字符
- ^ :表示匹配字符串的开头
- $ :表示匹配字符串的结尾
- * :匹配前面的字符出现0次或多次
- + :匹配前面的字符出现1次或多次
- ? :匹配前面的字符出现0次或1次
- {n} :匹配前面的字符出现n次
- {n,} :匹配前面的字符出现至少n次
- {n,m} :匹配前面的字符出现n到m次
例如,以下代码可以判断一个字符串是否是合法的邮箱地址:
```
import re
email = "example@domain.com"
pattern = r'^\w+@[a-zA-Z0-9]+\.[a-zA-Z]{2,4}$'
if re.match(pattern, email):
print("Valid email address")
else:
print("Invalid email address")
```
在上面的代码中,使用了re.match函数来匹配字符串,并使用正则表达式r'^\w+@[a-zA-Z0-9]+\.[a-zA-Z]{2,4}$'来表示合法的邮箱地址。其中,\w+表示匹配一个或多个字母、数字或下划线,[a-zA-Z0-9]+表示匹配一个或多个字母或数字,\.[a-zA-Z]{2,4}表示匹配一个点和2到4个字母。
希望这些信息对你有所帮助!
阅读全文