字符串搜索與合并
-
正則表達(dá)式中使用Unicode
問(wèn)題:提取一段文本中的所有中文
使用re
模塊中的正則表達(dá)式進(jìn)行搜索與匹配垄分,首先需要確保待匹配的字符串文本及正則表達(dá)式為Unicode編碼,否則可能找不到,同理后續(xù)講到的字節(jié)字符串的搜索與匹配激挪,也要講待匹配的字符及正則表達(dá)式轉(zhuǎn)換成字節(jié)形式几晤,其實(shí)牲证,確定編碼范圍:例如基本漢字咙咽,Unicode編碼范圍\u4e00-\u9fa5
import re
text=u"we are 我是測(cè)試哈哈哈哈"
pattern=re.compile(u'[\u4e00-\u9fa5]+')
zhongwenUnicode=pattern.findall(text)
zhongwen=(i.encode("utf-8") for i in zhongwenUnicode)
for i in zhongwen:
print(i)
-
字符串的合并
簡(jiǎn)單合并操作,使用+
或者直接將字面字符串放在一起
text1="we are"
text2="a leader"
print(text1+" "+text2)#we are a leader
print("we are" "a leader")#we area leader
如果待合并的字符串在一個(gè)序列(比如列表蜕青、元組、字典等)或者iterable
,通常使用join()
方法
parts = ['Is', 'Chicago', 'Not', 'Chicago?']
print(','.join(parts))
字符串合并方式有很多種糊渊,比如說(shuō)還有format()
右核、輸出的print()
方法使用sep參數(shù)等,需要根據(jù)需求再来,選擇性能更好的方式蒙兰,適當(dāng)可利用生成器表達(dá)式