鍍金池/ 問答/Java  Python/ pyton 同一個(gè)正則表達(dá)式為什么在python里運(yùn)行的結(jié)果只有中文?

pyton 同一個(gè)正則表達(dá)式為什么在python里運(yùn)行的結(jié)果只有中文?

圖片描述

圖片描述

為什么我用同一個(gè)正則在網(wǎng)頁上能匹配上正確的結(jié)果,但在程序里確只能跑出中文,我把2段分開跑都能出結(jié)果的,合在一起缺只有中文

回答
編輯回答
亮瞎她

import re
text = '{"熱門":[{display:"北京",data:"Beijing|北京(BJS)|1|BJS"},{display:"上海",data:"Shanghai|上海(SHA)|2|SHA"}]}'
find = re.findall(r'display:"(.?)".?([A-Z]{3})',text)
print(find)

注意沒顯示的星號(hào)

運(yùn)行結(jié)果:
[('北京', 'BJS'), ('上海', 'SHA')]
圖片描述

2017年9月20日 00:17
編輯回答
笑忘初

去掉了一對(duì)分組括號(hào)

import re

data = '''
北京(BJS)
上海(SHA)
'''

pattern = re.compile('[\u4e00-\u9fa5]+\([A-Z]{3}\)')
result = pattern.findall(data)
print(result)

結(jié)果:
['北京(BJS)', '上海(SHA)']

2017年1月9日 13:30