这样算吗?121238asdf<img class="BDE_Image" src="https://imgsa.baidu.com/forum/w%3D580/sign=da0493cd90ef76c6d0d2fb23ad14fdf6/e483aa4bd11373f0bddb2e73a40f4bfbf9ed04b1.jpg" width="560" height="420">
Rentetan adalah seperti di atas, jenisnya ialah 'str', dan aksara Cina mesti diperolehi mengikut keteraturan. Apabila saya menggunakan [u4e00-u9fa5] sebelum ini, saya masih mendapat senarai simbol dan nombor dalam bahasa Inggeris. Tolong ajar saya postur yang betul. Juga, beritahu saya di mana saya membuat kesilapan...
pattern = re.compile(r'[\u4E00-\u9FA5]')
print pattern.findall(x[1])
Ini yang saya tulis...tetapi hasil yang dikembalikan tidak mempunyai aksara Cina, tetapi aksara lain kecuali aksara Cina.
Saya menganggap di sini bahawa teks yang anda perlu padankan ialah
s
:decode('utf8')
是怕s的值为类似x66x77x88
这样的Unicode散列。另外,需要注意compile()
中ur
修饰符,u
di sini ialah pengubah suai Unikod.PS: Saya terinspirasi oleh artikel ini.
Kemas kini
Saya baru sahaja membaca apa yang dikatakan di tingkat bawah Memang benar bahawa dengan Python 3, outputnya ialah cincangan Unicode yang berikut dipetik dari sini
Anda menggunakan python2,
uxxxx
是unicode字符,匹配后得到的是字节
String, apa yang dicetak ialah setiap nilai bait.Tukar kepada python
3
dan masalah ini akan hilang