我如何在正则表达式中进行条件设置?

时间:2018-11-16 23:58:26

标签: python regex

说,我想在“。”“或”。“上分割一个字符串,但不要在”。“”上分割两次。

例如:

s = "Something something。」 something something。 something。」that's great!"

我想回来

s = "Something something。」\n something something。\n something。」\nthat's great!"

我在弄清楚如何拆分。」而没有得到。\n」。\n」\n时遇到麻烦

1 个答案:

答案 0 :(得分:1)

在python中,您可以在注释中实现以下建议:

import re

s = "Something something。」 something something。 something。」that's great!"
pattern = re.compile(r'(。」|。)')
pattern.sub(lambda match: match.groups()[0] + '\n', s)

"Something something。」\n something something。\n something。」\nthat's great!"

默认情况下,比赛是贪婪的比赛,因此,如果可能的话,使用更长的模式(如果后面是,则不会在开头的中进行分割)。