在Python中,str.format()方法与正则表达式可以用来格式化字符串。下面我将分别展示这两种方法的使用方法和示例。
### str.format()方法
1. **基本用法**:
- `{}` 是占位符,用于插入变量值。
- 使用 `{}` 包裹的变量名会被替换为对应的值。
```python
name = "张三"
age = 30
job = "工程师"
# 使用str.format()方法格式化字符串
msg = "我的名字是{0}, 年龄是{1}, 职业是{2}".format(name, age, job)
print(msg) # 输出: 我的名字是张三, 年龄是30, 职业是工程师
```
2. **关键字参数**:
- 如果想要根据变量名来指定位置,可以使用 `key=value` 的形式。
```python
# 使用关键字参数
msg = "我的名字是{name}, 年龄是{age}, 职业是{job}".format(name="李四", age=28, job="设计师")
print(msg) # 输出: 我的名字是李四, 年龄是28, 职业是设计师
```
3. **格式化选项**:
- 在花括号内可以添加格式化选项,如 `<`、`^` 和 `>` 用于左对齐、居中对齐和右对齐,以及 `0` 填充。
```python
msg = "{:<10} {:^10} {:>10}".format("姓名", "成绩", "分数")
print(msg) # 输出: 姓名 成绩 分数
```
### 正则表达式
1. **基本用法**:
- 使用 `re` 模块提供的函数进行字符串匹配和替换。
2. **匹配**:
- `match()` 用于在字符串的开始位置查找匹配项。
- `search()` 用于在整个字符串中查找匹配项。
3. **替换**:
- `sub()` 用于替换所有匹配项为指定的替换字符串。
```python
import re
# 创建一个正则表达式对象,用于匹配电子邮件地址
email_pattern = re.compile(r'\b[A-Za-z0-9._%+-]+@[A-ZA-z0-9.-]+\.[A-Z|a-z]{2,}\b')
# 待处理的文本
text = "联系我:example123@example.com"
# 使用re.sub()替换所有匹配项
new_text = email_pattern.sub('[EMAIL_HIDDEN]', text)
print(new_text) # 输出: 联系我:[EMAIL_HIDDEN]
```
以上就是关于Python中str.format()方法和正则表达式的基本使用方法,以及相应的示例代码。