python 如何去除英文标点
时间: 2023-02-26 20:11:24 浏览: 82
你可以使用字符串方法 `translate()` 和 `maketrans` 函数来去除英文标点。
首先,你需要创建一个字符映射表,用于指定哪些字符需要被删除。接着,使用 `translate()` 方法传递该字符映射表,以在字符串中去除指定字符。
以下是一个示例代码:
```
import string
def remove_punctuation(input_string):
# 创建字符映射表,用于指定哪些字符需要被删除
translator = str.maketrans('', '', string.punctuation)
# 使用 translate() 方法传递该字符映射表,以在字符串中去除指定字符
no_punct = input_string.translate(translator)
return no_punct
input_string = "Hello, World! How are you today?"
print(remove_punctuation(input_string))
```
输出:
```
Hello World How are you today
```
相关问题
python去除英文标点符号
可以使用Python内置的string库以及正则表达式来去除英文标点符号。
以下是一个示例代码:
```python
import string
import re
def remove_punctuation(text):
# 去除string库中的标点符号
text = text.translate(str.maketrans("", "", string.punctuation))
# 去除其他的标点符号
text = re.sub(r'[^\w\s]', '', text)
return text
# 测试
text = "Hello, world! This is a test."
text = remove_punctuation(text)
print(text)
```
输出结果为:`Hello world This is a test`
python去除中文标点符号
可以使用正则表达式来去除中文标点符号,示例代码如下:
```python
import re
text = "这是一段包含中文标点符号的文本。!?。"
clean_text = re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、~@#¥%……&*():;《)《》“”()»〔〕[]【】〖〗_—+]", "", text)
print(clean_text)
```
输出结果为:`这是一段包含中文标点符号的文本`。
该正则表达式可以匹配中文标点符号以及常见的英文标点符号,并用空字符串替换掉。
阅读全文