【全网最全】python正则
时间: 2024-09-16 13:00:25 浏览: 59
Python中的正则表达式(Regular Expression,简称re)是一种强大的文本处理工具,用于模式匹配、搜索替换等操作。它是通过内置的`re`模块来实现的。以下是Python正则表达式的一些基本概念:
1. **模式匹配**:正则表达式包含一系列字符和特殊符号,用于描述要查找的字符串模式。比如`\d`代表数字,`.`代表任意单个字符,`^`表示行首,`$`表示行尾。
2. **函数和标志**:Python `re`模块提供了许多函数,如`search()`、`match()`、`findall()`等,以及标志参数(如`re.IGNORECASE`忽略大小写,`re.MULTILINE`多行模式等)。
3. **分组和引用**:`()`用于分组,可以让匹配结果提取出来;`\n`代表换行符,`\\`用于转义特殊字符。
4. **模版字面量**:从Python 3.6开始,你可以使用反引号(```)创建正则表达式的字符串,语法更简洁。
```python
import re
# 使用正则表达式
text = "Hello, World!"
pattern = r"Hello\s+(\w+)" # 匹配"Hello"后的单词
match = re.search(pattern, text)
if match:
print(match.group(1)) # 输出 "World"
```
相关问题
使用python写一个脚本,用来搜索全网BT下载资源
你好!
如果想使用 Python 来搜索全网 BT 下载资源,可以使用第三方模块 `beautifulsoup4` 来爬取网站信息,然后使用 Python 的内置模块 `re` 来匹配所需的信息。
下面是一个示例代码:
```python
import re
import requests
from bs4 import BeautifulSoup
def search_bt_resources(keyword):
# 构造搜索的 URL
search_url = "https://www.example.com/search?q=" + keyword
# 发起请求,获取搜索结果页面
resp = requests.get(search_url)
resp.raise_for_status()
# 使用 BeautifulSoup 解析页面
soup = BeautifulSoup(resp.text, "html.parser")
# 使用正则表达式提取所需的信息
pattern = re.compile(r"<a\s+href='(.+?)'\s+title='(.+?)'>")
resources = pattern.findall(soup.prettify())
# 返回搜索结果
return resources
# 搜索关键字 "Python"
results = search_bt_resources("Python")
for result in results:
print(result)
```
这段代码中,我们使用了 `requests` 库来发起 HTTP 请求,并使用 `beautifulsoup4` 库来解析网页。然后使用正则表达式来匹配我们想要的信息,最后将搜索结果打印出来。
希望这段代码能帮助你实现你的目的。
阅读全文