python

关注公众号 jb51net

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

python如何使用split多字符分割字符串的方法

作者:ToMiky明明

这篇文章主要给大家介绍了关于python如何使用split多字符分割字符串的相关资料,split()方法是一个非常强大的工具,可以帮助我们轻松地分割字符串,需要的朋友可以参考下

1.python 有内置函数split()分隔字符串,但这个内置函数只能识别单个分隔符。

调用方法如下: 

str.split(str="", num=string.count(str)).

其中: 

示例如下:

word = 'python_study_2000-2022-(1).py'
lista = word.split('_')
print(lista)

#['python', 'study', '2000-2022-(1).py']
#默认num=-1分割所有,以_进行分割

listb = word.split('_-')
print(listb)

#['python_study_2000-2022-(1).py']
#在此处识别到的是以_-整体进行分割,但字符串没有这个整体连接符,所以直接返回整个字符串。


listc = word.split('_|-')
print(listc)

#['python_study_2000-2022-(1).py']
#用|或的方法也没有用,反而认为是以_|-整体进行分割,所以还是返回整个字符串。

listd = word.split('_', 1)
print(listd)

#['python', 'study_2000-2022-(1).py']
#仅仅限制分割一次,所以返回两个字符串列表

2. 用正则表达式re模块的split()函数可以使用多个分隔符对字符串进行分割,其中不同的分隔符用中括号[]圈起来(推荐此种方法),或者用“|”隔开。

word = 'python_study_2000-2022.py'

import re

listf = re.split(r'[_.-]',word)#推荐此法,其中.号不能放最后,但可放最前或中间
print(listf)
#['python', 'study', '2000', '2022', 'py']

liste = re.split('_|-',word)#不能用于分割.号
print(liste)
#['python', 'study', '2000', '2022.py']

附:使用多个定界符拆分字符串

  1. 使用 re.split() 方法,例如 re.split(r',|-', my_str)。
  2. re.split() 方法将拆分所有出现的分隔符之一的字符串。
import re
# 👇️ 用 2 个分隔符拆分字符串
my_str = 'fql,jiyik-dot,com'
my_list = re.split(r',|-', my_str)  # 👈️ 以逗号或连字符分隔
print(my_list)  # 👉️ ['fql', 'jiyik', 'dot', 'com']

re.split 方法接受一个模式和一个字符串,并在每次出现该模式时拆分字符串。

管道 | 字符是一个或。 匹配 A 或 B。

该示例使用 2 个分隔符(逗号和连字符)拆分字符串。

# 👇️ 用 3 个分隔符拆分字符串
my_str = 'fql,jiyik-dot:com'
my_list = re.split(r',|-|:', my_str)  # 👈️ comma, hyphen or colon
print(my_list)  # 👉️ ['fql', 'jiyik', 'dot', 'com']

下面是一个使用 3 个分隔符(逗号、连字符和冒号)拆分字符串的示例。

我们可以使用尽可能多的 | 正则表达式中必要的字符。

总结 

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

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