python从键盘输入一行字符串,将该字符串写入文件,使用正则表达式提取文件中的电话号码
时间: 2024-10-20 22:09:49 浏览: 31
在Python中,你可以通过`input()`函数从用户处获取一行字符串,然后使用内置的`open()`函数创建或打开一个文件,使用`write()`方法将字符串写入文件。对于正则表达式提取电话号码,你可以使用`re`模块中的`findall()`函数,它能在给定的文本中找到所有匹配指定模式的子串。
下面是一个简单的例子:
```python
import re
# 从用户输入获取字符串
user_input = input("请输入一行需要保存并提取电话号码的字符串:")
# 创建或打开文件(如果不存在会自动创建)
with open('phone_numbers.txt', 'w') as f:
# 写入用户输入的字符串
f.write(user_input)
# 使用正则表达式查找电话号码(假设电话号码的格式为xxx-xxx-xxxx)
pattern = r'\b\d{3}[-.]?\d{3}[-.]?\d{4}\b'
with open('phone_numbers.txt', 'r') as f:
content = f.read()
phone_numbers = re.findall(pattern, content)
print("提取到的电话号码有:", phone_numbers)
```
在这个例子中,我们假设电话号码可以是三种常见格式:xxx-xxx-xxxx、xxx.xxx.xxxx 或 xxx.xxx-xxxx。正则表达式`\b\d{3}[-.]?\d{3}[-.]?\d{4}\b`用于匹配这些格式。
阅读全文