Python基础学习:字符串分割方法详解
Python中字符串分割的常用方法是直接调用字符串的str.split方法,但是其只能指定一种分隔符,如果想指定多个分隔符拆分字符串需要用到re.split方法(正则表达式的split方法)。
1.str.split字符串的split方法函数原型如下,其中sep为指定的分隔符,maxsplit为最大分割次数:
str.split(sep=None, maxsplit=-1)
python
运行
1默认情况下,不指定分隔符时则以空白字符(空格,回车,制表符等)作为分隔符拆分字符串:
>>> s = 'A BtCnD' >>> s.split() ['A', 'B', 'C', 'D'] >>>
python
运行
1234在结果列表中,不会包含空字符串:
>>> s = ' A BtCnDnn' >>> s.split() ['A', 'B', 'C', 'D'] >>>
python
运行
1234567指定分隔符:
>>> s = 'www.google.com' >>> s.split('.') ['www', 'google', 'com'] >>> s = 'AA||BB||CC||DD' >>> s.split('||') ['AA', 'BB', 'CC', 'DD'] >>>
python
运行
12345678910111213指定最大分割次数:
>>> s = 'www.google.com' >>> s.split('.', 1) ['www', 'google.com'] >>> s = 'AA||BB||CC||DD' >>> s.split('||', 2) ['AA', 'BB', 'CC||DD'] >>>
python
运行
12345678910111213由此可见,当指定最大分割次数maxsplit时,结果列表长度为maxsplit+1。
但是,字符串的split方法只能指定一个分隔符,如下:
s = 'AAAA,BBBB:CCCC;DDDD'
python
运行
1如果想指定逗号、冒号、分号都做为分隔符,字符串的split方法是做不到的,此时要用正则表达式中的split方法。
2.re.split正则表达式的split方法原型如下,其中pattern为指定的分隔正则表达式,string为要分割的字符串,maxsplit为最大分割次数,flags为正则表达式用到的通用标志:
re.split(pattern, string, maxsplit=0, flags=0)
python
运行
1参考示例:
>>> import re >>> s = 'AAAA,BBBB:CCCC;DDDD' >>> re.split(r'[,:;]', s) ['AAAA', 'BBBB', 'CCCC', 'DDDD'] >>>
python
运行
123456789如果在正则表达式里使用了捕获组也就是括号,则结果列表中也会包含捕获的内容:
>>> import re #更多Python视频、源码、资料加群711312441免费获取 >>> s = 'AAAA,BBBB:CCCC;DDDD' >>> re.split(r'([,:;])', s) ['AAAA', ',', 'BBBB', ':', 'CCCC', ';', 'DDDD'] >>>
python
运行
123456789如果不想在结果中看到分隔符,但仍然想用括号对正则表达式模式进行分组,可以使用非捕获组,以(?:…)的形式指定,示例如下:
>>> import re >>> s = 'AAAA,BBBB:CCCC;DDDD' >>> re.split(r'(?:[,:;])', s) ['AAAA', 'BBBB', 'CCCC', 'DDDD'] >>>
python
运行
123456789指定最大分割次数:
>>> import re >>> s = 'AAAA,BBBB:CCCC;DDDD' >>> re.split(r'[,:;]', s, 1) ['AAAA', 'BBBB:CCCC;DDDD'] >>> re.split(r'[,:;]', s, 2) ['AAAA', 'BBBB', 'CCCC;DDDD'] >>>
python
运行
12345678910111213由此可见,当指定最大分割次数maxsplit时,结果列表长度为maxsplit+1。
指定正则表达式中的通用标志flags:
>>> import re >>> re.split('[a-f]+', '0a3B9', flags=re.IGNORECASE)['0', '3', '9'] >>>
python
运行
123相关知识
【Python】基础
python基础课程系列(补充1)
1.字符串详解
Python中is和==的区别详解
Python学习手册
Python基础函数详解
shell 字符串分割与连接
python字典太长切割
在 Python 中构造 GraphQL 查询字符串的最佳方法
JS实现Split分割字符串同时允许被分割出的字符串中存在分割符号
网址: Python基础学习:字符串分割方法详解 https://www.huajiangbk.com/newsview1985574.html
上一篇: C4D模型制作技巧:线性切割详解 |
下一篇: 车牌识别的MATLAB实现 |
推荐分享

- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039