python正则表达式试题,003:Python正则表达式讲解及习题练习

正则表达式:

正则表达式就是描述字符串排列的一套规则。通常被用来检索、替换那些符合某个模式(规则)的文本。

为什么要学习正则表达式呢,因为我们在爬取数据的时候需要根据我们想要获取的内容来进行爬取,而正则表达式就具有这个基本功能。

在python中,一般我们会使用re模块来实现Python正则表达式的功能。

re常用函数解析:

0797cc8f213958a79cdef9b76eba8558.png

练习:

import re

print(re.match("www","www.baidu.com").span())

print(re.match("www","wwwbaidu.com"))

print(re.match("www","ww.baidu.com"))

print(re.match("www","baidu.wwwcom"))

print(re.match("www","wWw.wwwcom",flags=re.I))

#扫描字符串,返回从头起手位置成功的匹配

3db8da589dfb6865354f1a90a5968000.png

练习:

import re

print(re.search("sunck","good man is sunck!sunck is nice"))

print(re.search("sunck","good man is Sunck!sunck is nice"))

print(re.search("sunck","good man is Sunck!sunck is nice",flags=re.I))

e4f2c4f2f5bae3b4e8d11d267d256ca0.png

import re

print(re.findall("sunck","good man is sunck!Sunck is nice",flags=re

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python正则表达式(re模块)是一个用于处理字符串的强大工具,它可以用来匹配、查找、替换和分割字符串。以下是一些常用的正则表达式操作: 1. 导入re模块:`import re` 2. 匹配字符串:使用`re.match()`函数,如果字符串开头匹配正则表达式,则返回一个匹配对象;使用`re.search()`函数,如果字符串有匹配的部分,则返回一个匹配对象;使用`re.findall()`函数,返回所有匹配的列表;使用`re.finditer()`函数,返回一个迭代器,包含所有匹配的元组。 3. 替换字符串:使用`re.sub()`函数,将匹配到的部分替换为指定的字符串。 4. 分割字符串:使用`re.split()`函数,根据匹配到的正则表达式分割字符串。 下面是一些练习: 1. 编写一个程序,从输入的字符串提取所有的数字。 解析:使用`re.findall()`函数,匹配所有的数字。 ```python import re def extract_numbers(s): return re.findall(r'\d+', s) input_str = "abc123def456" print(extract_numbers(input_str)) ``` 2. 编写一个程序,将输入的字符串的所有字母转换为大写。 解析:使用`re.sub()`函数,将所有的小写字母替换为大写字母。 ```python import re def to_uppercase(s): return re.sub(r'[a-z]', lambda x: x.group().upper(), s) input_str = "Hello, World!" print(to_uppercase(input_str)) ``` 3. 编写一个程序,将输入的字符串的所有单词逆序排列。 解析:首先使用`re.split()`函数分割字符串,然后使用`reversed()`函数逆序排列单词,最后使用`join()`函数将单词连接成字符串。 ```python import re def reverse_words(s): words = re.split(r'\s+', s) reversed_words = [''.join(reversed(word)) for word in words] return ' '.join(reversed_words) input_str = "Hello, World!" print(reverse_words(input_str)) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值