可以使用正则表达式和中文字符集来实现:

import re

text = "D的英文不替换,中文D替换为党,中文D在这里也替换"

# 定义中文字符集
chinese_pattern = '[\u4e00-\u9fa5]'

# 匹配中文D并替换为党
text = re.sub(f'({chinese_pattern})D({chinese_pattern})', r'\1党\2', text)

print(text)
# 输出:D的英文不替换,中文党替换为党,中文党在这里也替换

解释:

  1. 定义中文字符集 [\u4e00-\u9fa5],用于匹配中文字符。
  2. 使用正则表达式 ({chinese_pattern})D({chinese_pattern}) 匹配中文D,其中 () 用于捕获中文D前后的字符。
  3. 使用 re.sub 函数将匹配到的中文D替换为党,替换的模板为 \1党\2,其中 \1\2 表示捕获到的前后字符, 是替换的字符。
python 把D替换成党 假如D字符前后是中文则替换D字符前后是英文则不替换

原文地址: http://www.cveoy.top/t/topic/hfkZ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录