2013-06-10 9 views
6

में कनवर्ट आंकिक केरेक्टर सन्दर्भ अंकन एक मानक अधिमानतः pythonic, एक उचित यूनिकोड स्ट्रिंग के लिए &#xxxx; अंकन कन्वर्ट करने के लिए जिस तरह से है?यूनिकोड स्ट्रिंग

उदाहरण के लिए,

מפגשי 

करने के लिए परिवर्तित किया जाना चाहिए:

מפגשי 

यह किया जा सकता है - काफी आसानी से - स्ट्रिंग जोड़तोड़ का उपयोग कर, लेकिन मुझे आश्चर्य है कि वहाँ इस के लिए एक मानक पुस्तकालय है या नहीं।

+0

सुझाव: कि अंकन कहा जाता है [ "आंकिक केरेक्टर सन्दर्भ"] (https: // एन। wikipedia.org/wiki/Numeric_character_reference)। –

+0

+1 @ जोचिमसॉयर, धन्यवाद, शीर्षक को अपडेट किया गया। –

+0

संबंधित: http://stackoverflow.com/questions/3894564/replace-numeric-character-references-in-xml-document-using-python –

उत्तर

9

उपयोग HTMLParser.HTMLParser():

>>> from HTMLParser import HTMLParser 
>>> h = HTMLParser() 
>>> s = "מפגשי" 
>>> print h.unescape(s) 
מפגשי 

यह standard library का हिस्सा है, भी है।


हालांकि, अगर आप अजगर 3 का उपयोग कर रहे हैं, तो आप html.parser से आयात करने के लिए है:

>>> from html.parser import HTMLParser 
>>> h = HTMLParser() 
>>> s = 'מפגשי' 
>>> print(h.unescape(s)) 
מפגשי 
+0

'अनदेस्केप' आंतरिक और अनियंत्रित प्रतीत होता है। क्या कोई "आधिकारिक" तरीका है? – georg

+0

@ thg435 मुझे पता नहीं है, क्षमा करें – TerryA

+0

मुझे यह भी नहीं मिला है। खैर, यह थोडा बेकार है, है ना? – georg

संबंधित मुद्दे