python中文標點轉英文標點

2021-09-11 02:18:41 字數 1075 閱讀 5113

unicode有個normalize的過程,按照unicode標準,有c、d、kc、kd四種,kc會將大部分的中文標點符號轉化為對應的英文,還會將全形字符轉化為相應的半形字元,比如:

import unicodedata

t = u'中國,中文,標點符號!你好?12345@#【】+=-()'

t2 = unicodedata.normalize('nfkc', t)

'''>>> print t2

中國,中文,標點符號!你好?12345@#【】+=-()

'''

with open('f:/src.txt', 'r', encoding='utf-8') as f:

res = unicodedata.normalize('nfkc', f.read())

with open('f:/dst.txt', 'w', encoding='utf-8') as ff:

ff.write(res)

def punctuation_mend(string):

import unicodedata

import os

table =

if os.path.isfile(string):

with open(string, 'r', encoding='utf-8') as f:

res = unicodedata.normalize('nfkc', f.read())

res = res.translate(table)

with open(string, 'w', encoding='utf-8') as f:

f.write(res)

else:

res = unicodedata.normalize('nfkc', string)

res = res.translate(table)

return res

print(punctuation_mend('【】()%#@&「」'))

punctuation_mend('f:/z.txt')

如何使用python將中文標點轉為英文標點

1.unicode有個normalize的過程,按照unicode標準,有c d kc kd四種,kc會將大部分的中文標點符號轉化為對應的英文,還會將全形字符轉化為相應的半形字元,比如 import unicodedata t u 中國,中文,標點符號!你好?t2 unicodedata.norma...

將中文標點符號替換成英文標點符號

轉全形的函式 sbc case 任意字串 全形字串 全形空格為12288,半形空格為32 其他字元半形 33 126 與全形 65281 65374 的對應關係是 均相差65248 public string tosbc string input if c i 127 c i char c i 65...

js正規表示式將中文標點轉為英文標點

最近寫前端的專案,本以為需要將中文標點轉為英文標點這一功能的,所以寫了這個檔案,但是最後用不上了,刪掉了可惜,所以發表出來,做個記錄。因為沒有使用上,所以不知道是否有bug。將中文符號轉換成英文符號 function chinesechar2englishchar chinesechar str s...