python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python字符串分割

python字符串分割常用方法(str.split()和正则)

作者:陌北v1

在Python中字符串是一种非常常见的数据类型,在实际应用中我们经常需要对字符串进行分割,以便对其中的内容进行处理,这篇文章主要给大家介绍了关于python字符串分割(str.split()和正则)的相关资料,需要的朋友可以参考下

str.split()方法

str.split() 是 Python 中字符串类型的一个方法,可以用来将字符串按照指定的分隔符分割成多个子字符串。

例如,如果你有一个字符串 ‘a,b,c,d’,你可以这样分割它:

>>> 'a,b,c,d'.split(',')
['a', 'b', 'c', 'd']

这会将字符串按照逗号分割成四个子字符串,并返回一个包含这些子字符串的列表。

默认情况下,str.split() 方法会按照空格分割字符串。因此,如果你的字符串中有多个连续的空格,它们会被视为一个分隔符。

>>> 'a b  c   d'.split()
['a', 'b', 'c', 'd']

你可以使用第二个参数来指定分割字符串时使用的分隔符。例如,如果你想使用 ‘:’ 作为分隔符,你可以这样写:

>>> 'a:b:c:d'.split(':')
['a', 'b', 'c', 'd']

你也可以指定 str.split() 方法的最大分割次数。例如,如果你想只分割一次,你可以这样写:

>>> 'a,b,c,d'.split(',', 1)
['a', 'b,c,d']

正则方法

你可以使用 Python 的 re 模块中的 re.split() 函数来分割字符串。这个函数可以使用正则表达式作为分隔符。例如,如果你想使用一个或多个连续的数字作为分隔符,你可以这样写:

import re

s = 'a123b456c789d'
re.split(r'\d+', s)

这会返回 [‘a’, ‘b’, ‘c’, ‘d’]。

你也可以使用正则表达式中的分组来分割字符串。例如,如果你想分割一个包含数字和字母的字符串,并保留数字,你可以这样写:

import re

s = 'a1b2c3d4e5f6'
re.split(r'(\d+)', s)

这会返回 [‘a’, ‘1’, ‘b’, ‘2’, ‘c’, ‘3’, ‘d’, ‘4’, ‘e’, ‘5’, ‘f’, ‘6’]。

正则表达式非常强大,可以用来匹配和操作各种类型的字符串。如果你对正则表达式不熟悉,可以参考 Python 官方文档中的正则表达式教程。

附:Python中通过多个字符分割(split)字符串的方法

python中字符串自带的split方法一次只能使用一个字符对字符串进行分割,但是python的正则模块则可以实现多个字符分割

import re
re.split('[_#|]','this_is#a|test')

返回的是一个列表(list),输出结果如下:

['this', 'is', 'a', 'test']

总结

到此这篇关于python字符串分割常用方法的文章就介绍到这了,更多相关python字符串分割内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文