Python中,re.split
是一个基于正则表达式的字符串分割函数,可以根据指定的正则表达式对给定字符串进行切割,并将切割后的结果保存到列表中,下面是使用re.split
的完整攻略。
re.split函数的基本语法
re.split(pattern, string, maxsplit=0, flags=0)
re.split
函数接收最少两个参数:一个正则表达式pattern
和一个字符串string
,用于将字符串string
根据正则表达式pattern
进行分割。
maxsplit
可选参数是指定最大切割次数,默认值为0,表示不限制切割次数;flags
可选参数为正则表达式的匹配模式,常用 re.IGNORECASE
从文本序列中跳过空格、忽略大小写等。
re.split函数的返回值
re.split
函数返回一个新列表,其中包含了根据正则表达式切割后的字符串。
re.split函数的实例展示
下面是使用re.split函数的示例:
假设我们有一个字符串:
s = 'I have a dog, a cat, and a mouse.'
现在,我们要将字符串分割成单独的单词。我们可以使用re.split
函数,将标点符号作为分隔符,返回一个仅包含单词的列表:
import re
s = 'I have a dog, a cat, and a mouse.'
words = re.split('[,.\s]', s)
print(words)
运行结果:
['I', 'have', 'a', 'dog', '', 'a', 'cat', '', 'and', 'a', 'mouse', '']
代码从字符串中创建了一个包含所有单词和标点符号的列表,然后使用正则表达式'[,.s]'
对列表进行切割,即在文件里查找给定字符,每匹配到一个字符就进行分割将结果加入到返回的words列表中。
下面是第二个示例代码:
import re
s = 'I have a dog, a cat, and a mouse.'
sentence = re.split('[,.]', s, 1)
print(sentence)
运行结果:
['I have a dog', ' a cat, and a mouse.']
代码中,正则表达式'[,.]'
将字符串从第一个出现的逗号或句点处进行分割。
需要注意的是,在上述示例代码中,maxsplit
参数被设置为了1, 因此在第一个逗号或句号处进行了切割,返回了被切断后的两部分。