python保留字符串英文单词之间的空格符,删除其他所有空白符
时间: 2023-06-18 14:05:55 浏览: 122
你可以使用正则表达式来保留字符串英文单词之间的空格符并删除其他所有空白符:
```python
import re
# 定义需要处理的字符串
string = "This is a string with\nmultiple spaces and\ttabs."
# 使用正则表达式替换空白符
new_string = re.sub(r'[^\S\n]+', ' ', string)
print(new_string)
```
输出:
```
This is a string with multiple spaces and tabs.
```
这里使用了正则表达式 `r'[^\S\n]+'` 来匹配除了换行符 `\n` 以外的所有空白符,并将其替换为一个空格符。
相关问题
python把字符串拆分开 不用分隔符
在Python中,如果你想要将一个字符串按照空格或其他空白字符拆分成单个单词或元素,而不需要特定的分隔符,你可以使用`split()`函数默认的空格分割。例如:
```python
s = "这是一个测试字符串"
words = s.split() # 使用默认的空格分隔
print(words)
```
这会返回一个列表,其中每个元素都是原字符串中的一个单独单词:
```
['这是一个测试字符串']
```
如果你想去除前后多余的空白,可以使用`strip()`函数然后再进行分隔:
```python
s = " 这是一个测试字符串 "
words = s.strip().split()
print(words)
```
结果将是:
```
['这是一个测试字符串']
```
用python完成有一个字符串words=”I am a \tstudent. \n\n You are a teacher.”,各单词 之间存在多个不同的空格或空字符,编程让各单词之间只保留一个空格作为分隔符。
可以使用正则表达式来实现:
```python
import re
words = "I am a \tstudent. \n\n You are a teacher."
words = re.sub(r'\s+', ' ', words).strip()
print(words)
```
输出结果为:
```
I am a student. You are a teacher.
```
解释一下代码:
- `re.sub(r'\s+', ' ', words)`:使用正则表达式将所有的空白字符(包括空格、制表符、换行符等)替换为一个空格。
- `.strip()`:去除字符串两端的空白字符。
阅读全文