使用正则表达式从给定的文本中提取所有电子邮件地址并提取所有URL
时间: 2024-09-23 10:06:28 浏览: 48
java正则表达式的简单运用
使用正则表达式(RegEx)可以从文本中提取电子邮件地址和URL。下面是一些简单的正则模式示例,分别针对这两种情况:
**提取电子邮件地址(Emails):**
```regex
import re
def extract_emails(text):
pattern_email = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
emails = re.findall(pattern_email, text)
return emails
# 示例
text = "Please contact us at info@example.com or support@example.net for more information."
email_list = extract_emails(text)
print(email_list) # ['info@example.com', 'support@example.net']
```
**提取URL(URLs):**
```regex
def extract_urls(text):
pattern_url = r'(http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+)'
urls = re.findall(pattern_url, text)
return urls
# 示例
url_text = "Visit our website at https://www.example.com or check out http://blog.example.org."
url_list = extract_urls(url_text)
print(url_list) # ['https://www.example.com', 'http://blog.example.org']
```
请注意,以上正则表达式可能无法覆盖所有的URL和复杂的电子邮件地址格式,实际使用时可能需要更精确或完整的模式。
阅读全文