Python切分字符串

先上代碼再解釋:

#!/usr/bin/python
# -*- coding: UTF-8 -*- 


s = "target_link_libraries(qtinfra_canvas \n   PUBLIC Qt4::QtGui    \nPRIVATE infra common qtinfra_util)"

s1 = s[s.index('(')+1:s.index(')')]	 
s2 = s1.split(" ")
s3 = map(lambda s: s.strip(), s2)
s4 = filter(None, s3) 
print s1
print s2
print s3
print s4


'''Output:
qtinfra_canvas
   PUBLIC Qt4::QtGui
PRIVATE infra common qtinfra_util
['qtinfra_canvas', '\n', '', '', 'PUBLIC', 'Qt4::QtGui', '', '', '', '\nPRIVATE', 'infra', 'c
['qtinfra_canvas', '', '', '', 'PUBLIC', 'Qt4::QtGui', '', '', '', 'PRIVATE', 'infra', 'commo
['qtinfra_canvas', 'PUBLIC', 'Qt4::QtGui', 'PRIVATE', 'infra', 'common', 'qtinfra_util']
'''

去除字符串裏面的\n:str.strip()

去除list裏面的\n(不減少元素數量):newStr = map(lambda s: s.strip(), oldStr)

去除list裏面爲空的元素:newStr = filter(None, oldStr)


切分字符串(可以結合正則表達式來做:re模塊(需import re)裏面的re.split()):

用空格:s2 = s1.split(" ")

用逗號:s2 = s1.split(",")






發佈了170 篇原創文章 · 獲贊 64 · 訪問量 52萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章