簡體   English   中英

如何僅解析帶有正則表達式的HTML文件中文本中的外來字符

[英]How do I parse only foreign characters from the text in an HTML file with regular expressions

我正在嘗試解析HTML並自動更改任何外來字符的字體,並且遇到了一些問題。 我嘗試通過幾種不同的方法來實現這一目標,但是沒有一種方法能很好地工作,我想知道是否有人有任何想法。 使用python有什么簡單的方法可以將所有外來字符(特別是日語漢字/平假名/片假名)與正則表達式進行匹配? 我一直在使用的是一組非外國字符([^ A-Za-z0-9 <>'“ =])的補碼,但是效果不佳,我擔心它會匹配<...>中包含的內容,我不想這樣做。

我不會只為此使用正則表達式。 沿着這條道路處於憤怒托尼小馬

不過,我會結合使用HTML解析器和正則表達式。 這樣,您就可以區分標記和非標記。

使用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)

使用此處的代碼表獲取字符的范圍。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM