比较详细Python正则表达式操作指南(re使用)[9]

将字符串分片

`RegexObject` 的 split() 方法在 RE 匹配的地方将字符串分片,将返回列表。它同字符串的 split() 方法相似但提供更多的定界符;split()只支持空白符和固定字符串。就象你预料的那样,也有一个模块级的 re.split() 函数。

split(string [, maxsplit = 0])

通过正则表达式将字符串分片。如果捕获括号在 RE 中使用,那么它们的内容也会作为结果列表的一部分返回。如果 maxsplit 非零,那么最多只能分出 maxsplit 个分片。


你可以通过设置 maxsplit 值来限制分片数。当 maxsplit 非零时,最多只能有 maxsplit 个分片,字符串的其馀部分被做为列表的最後部分返回。在下面的例子中,定界符可以是非数字字母字符的任意序列。

#!python

>>> p = re.compile(r'"W+' )

>>> p.split('This is a test, short and sweet, of split().'
)

[
'This', 'is', 'a', 'test', 'short', 'and', 'sweet', 'of', 'split', ''
]

>>> p.split('This is a test, short and sweet, of split().', 3
)

[
'This', 'is', 'a', 'test, short and sweet, of split().'
]

有时,你不仅对定界符之间的文本感兴趣,也需要知道定界符是什么。如果捕获括号在 RE 中使用,那么它们的值也会当作列表的一部分返回。比较下面的调用:

#!python

>>> p = re.compile(r'"W+' )

>>> p2 = re.compile(r'("W+)'
)

>>> p.split('This is a test.'
)

[
'This', 'is', 'a', 'test', ''
]

>>> p2.split('This is a test.'
)

[
'This', ' ', 'is', ' ', 'a', ' ', 'test', '.', ''
]

模块级函数 re.split() 将 RE 作为第一个参数,其他一样。

#!python

>>> re.split('["W]+', 'Words, words, words.' )

[
'Words', 'words', 'words', ''
]

>>> re.split('(["W]+)', 'Words, words, words.'
)

[
'Words', ', ', 'words', ', ', 'words', '.', ''
]

>>> re.split('["W]+', 'Words, words, words.', 1
)

[
'Words', 'words, words.'
]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值