我正在尝试解析HTML并自动更改任何外文字符的字体,但我遇到了一些问题。我尝试了几种不同的黑客方法,但没有一种效果很好,我想知道是否有人有什么想法。python有没有什么简单的方法来匹配所有的外文字符(特别是日文汉字/平假名/片假名)和正则表达式?我一直使用的是一组非外文字符(^A-Za-z0-9 <>'"=)的补码,但这不能很好地工作,我担心它会与<...>中包含的内容相匹配,这是我不想做的。
发布于 2010-08-19 00:46:20
为此,我不会只使用正则表达式。沿着这条路走下去就是an angry Tony the Pony。
不过,我会将HTML解析器与正则表达式结合使用。这样,您就可以区分标记和非标记。
发布于 2010-08-19 01:15:42
使用BeautifulSoup获取所需的内容,然后使用此代码的变体来匹配您的字符。
import re
kataLetters = range(0x30A0, 0x30FF)
hiraLetters = range(0x3040, 0x309F)
kataPunctuation = range(0x31F0,0x31FF)
myLetters = kataLetters+kataPunctuation+hiraLetters
myLetters = u''.join([unichr(aLetter) for aLetter in myLetters])
myRe = re.compile('['+myLetters+']+', re.UNICODE)
使用代码表here获取字符的范围。
https://stackoverflow.com/questions/3514415
复制相似问题