📜  将文本拆分为行并保留分隔符 python (1)

📅  最后修改于: 2023-12-03 14:53:52.945000             🧑  作者: Mango

将文本拆分为行并保留分隔符 - Python

当我们需要将一个文本字符串拆分为行并且需要保留行末分隔符时,Python提供了多种方式实现。下面分别介绍基于字符串分隔符和正则表达式来实现的方法。

基于字符串分隔符实现

我们可以使用字符串方法 splitlines() 来将文本字符串拆分为行。同时,设置参数 keepends=True 可以保留每行的行末分隔符。

text = 'Line 1\nLine 2\r\nLine 3\r'
lines = text.splitlines(keepends=True)
print(lines)

输出结果为:

['Line 1\n', 'Line 2\r\n', 'Line 3\r']
基于正则表达式实现

当需要对字符串进行更复杂的分割时,我们可以使用正则表达式来实现。以下是一个使用 re 模块的例子:

import re

text = 'Line 1\nLine 2\r\nLine 3\r'
pattern = re.compile(r'(\r\n|\r|\n)')
lines = pattern.split(text)
print(lines)

输出结果为:

['Line 1', '\n', 'Line 2', '\r\n', 'Line 3', '\r', '']

注意到在这个例子中,我们使用了带有分组的正则表达式。这会使 split() 方法返回一个包含分隔符的列表。

以上就是将文本拆分为行并保留分隔符的实现方式,通过这些方法,我们可以方便地对文本进行分析和处理。