2015-09-15 27 views
1

簡化我的任務,可以說我想在某些網頁中找到用希伯來語寫的任何單詞。 所以我知道希伯來字符代碼是U+05D0U+05EA。 我想寫類似:在正則表達式中使用unicode char代碼

expr = "[\u05D0-\u05EA]+" 
url = "https://en.wikipedia.org/wiki/Category:Countries"  

web_handle = urllib2.urlopen(url) 
website_text = website_handle.read()  
matches = sre.findall(exp, website_text) 
for item in matches: 
    print item 

我所期望的輸出是:

עברית

但代替了把很多中國/日本字符的。

+0

@stribizhev它什麼也找不到。也許我應該使用HTML代碼呢? – Sanich

回答

0

的表述應該是:

expr = u"[\u05D0-\u05EA]+" 

注意 'U' 開頭。

+0

這是一個解決你的問題的答案嗎? –

+0

@stribizhev是的! – Sanich

1

你可以只使用Unicode標準表示在Python中字符類中:

re.findall([\u05D0-\u05EA], website_text,re.U) 
+0

它不會找到任何東西。也許我應該使用HTML代碼呢? '&#1488'到'&#1514' – Sanich

+0

@Sanich不,它不適用於python,也許你需要解碼你的文本,實際上它是基於你的文本。 – Kasramvd

+0

該文本是HTML網頁 – Sanich

相關問題