使用UTF8格式的正则表达式过滤字符串

bluesky1年前 ⋅ 159 阅读

ChatGPT的回答仅作参考:

以下是使用UTF8格式的正则表达式过滤字符串的示例:

假设要过滤的字符串为 "Hello, 你好!",需要过滤掉所有的中文字符,只保留英文字符和标点符号。

可以使用如下的正则表达式:

```regex
[^\x00-\x7F]+
```

其中,`\x00-\x7F` 表示 ASCII 码表中的所有字符,`^` 表示取反,所以 `[^\x00-\x7F]` 表示除了 ASCII 码表中的字符以外的所有字符,也就是中文字符和其他非 ASCII 字符。

完整的过滤代码如下:

```python
import re

text = "Hello, 你好!"
pattern = re.compile(r'[^\x00-\x7F]+')
filtered_text = pattern.sub('', text)
print(filtered_text)  # 输出:Hello, !
```

其中,`re.compile()` 函数用于编译正则表达式,`pattern.sub()` 函数用于替换匹配到的字符串。

全部评论: 0

    相关推荐