怎么處理Python分割字符串時有多個分隔符
在使用 Python 處理字符串的時候,有時候會需要分割字符。 分隔符比如下劃線 “_”,比如 “.”之類的。
一個分隔符 比如對于文件名 20191022_log.zip,我們想要獲取前面的日期。 如果日期格式固定,對于這樣的字符串我們當(dāng)然可以使用索引進(jìn)行切割。 當(dāng)然也可以使用字符串的內(nèi)建函數(shù) split(). 結(jié)果返回的是一個列表。 如果分隔符不在字符串之列,那么返回的也是一個列表,不過元素只有一個,那就是這個字符串自身: 多個分隔符 還是上面那個例子,如果字符串是 ‘log_20191022.zip' 這個形式,想要獲取日期,有兩種方法, 一種方法是使用能夠 下劃線作為分隔符獲取結(jié)果的第一個元素,然后再使用 點 '.'作為分隔符再劃分一遍。 另一種方法就是直接使用 re.split() 。
因為 字符串的 split() 函數(shù)不能接受兩個分隔符作為參數(shù)。 re.split() 的使用方法如下: 以豎杠 | 作為分割分開兩個分隔符,如果有多個分隔符,則可以使用多個 | ,在上述例子中,因為點 . 是在正則里有特殊的匹配含義,所以需要使用 \ 反斜杠對其進(jìn)行轉(zhuǎn)義。
字符串方法str.split()幫助:
>>> help(str.split) Help on method_descriptor: split(self, /, sep=None, maxsplit=-1) Return a list of the words in the string, using sep as the delimiter string. sep The delimiter according which to split the string. None (the default value) means split according to any whitespace, and discard empty strings from the result. maxsplit Maximum number of splits to do. -1 (the default value) means no limit. >>>
用法: string.split( sep = None, maxsplit = -1)
string 要操作字符串
sep 分隔符,默認(rèn)值為whitespace空白符
maxsplit 最大分割次數(shù),默認(rèn)值為-1,表示無限制
如果同時有多個分隔符怎么分割呢?
可以用循環(huán)多次分割來實現(xiàn),例如:
>>> s = '6[5,12]3[2,6]1;35]67[8;9;11]12' >>> for j in '[],;': t=[i.split(j) for i in t] t=[i for j in t for i in j] >>> t ['6', '5', '12', '3', '2', '6', '1', '35', '67', '8', '9', '11', '12'] >>>
懂正則表達(dá)式的可以一步到位:
>>> import re >>> s = '6[5,12]3[2,6]1;35]67[8;9;11]12' >>> re.split('\[|\]|,|;',s) ['6', '5', '12', '3', '2', '6', '1', '35', '67', '8', '9', '11', '12']
到此這篇關(guān)于Python分割字符串時有多個分隔符怎么處理的文章就介紹到這了,更多相關(guān)Python分割字符串時有多個分隔符怎么處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
idea創(chuàng)建springMVC框架和配置小文件的教程圖解
本文通過圖文并茂的形式給大家介紹了idea創(chuàng)建springMVC框架和配置小文件的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-09-09python使用urllib2模塊獲取gravatar頭像實例
python使用urllib2模塊獲取gravatar頭像的實例,大家參考使用吧2013-12-12tensorflow入門:tfrecord 和tf.data.TFRecordDataset的使用
今天小編就為大家分享一篇tensorflow入門:tfrecord 和tf.data.TFRecordDataset的使用,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01快速進(jìn)修Python指南之迭代器Iterator與生成器
這篇文章主要為大家介紹了Java開發(fā)者快速進(jìn)修Python指南之迭代器Iterator與生成器示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12