Python unicode正则表达式issu

2024-09-27 21:27:39 发布

您现在位置:Python中文网/ 问答频道 /正文

为什么这样做:

>>> ss
u'\U0001f300'
>>> r = re.compile(u"[u'\U0001F300-\U0001F5FF']+", re.UNICODE)
>>> r.search(ss) # this works
<_sre.SRE_Match object at 0x7f359acf03d8>

但事实并非如此:

>>> r = re.compile("[u'\U0001F300-\U0001F5FF']+", re.UNICODE)
>>> r.search(ss) # this doesn't

根据下面伊格纳西奥的回答,这一点同样有效:

>>> r = re.compile(u"[\U0001F300-\U0001F5FF]+", re.UNICODE)
>>> r.search(ss)
<_sre.SRE_Match object at 0x7f359acf03d8>

Tags: researchobjectmatchunicodethisssat
1条回答
网友
1楼 · 发布于 2024-09-27 21:27:39

unicode干草堆上执行搜索时,请使用unicode模式。你知道吗

另外,“u'…'”不应该出现在模式中;那些是Unicode字符(在unicode中),没有这个字符。你知道吗

相关问题 更多 >

    热门问题