需求如题,比如对于下面的句子,我想将段落切分为子句,切分成一行一个子句的格式输出,同时不对原句子的任何字符修改。
例句:
sent = ' 某制药有限公司 温阳补肾。用于肾气亏虚,阳气不足所致的阳痿、早泄、遗精或弱精症弱精症 尚不明确。 每袋装20g 尚不明确。 18岁以下患者禁用。 开水冲服。一次一袋,一日3次。 温阳补肾,用于肾气亏虚、阳气不足所致的阳痿、早泄、遗精或弱精症 '
new_sent = re.sub('([。!?\?])([^”’])', r"\1\n\2", sent)
print(new_sent)
该段正则的主要目的就是寻找段落中句子结尾处(也即以句号感叹号问号所在的地方),然后使用换行符“\n”加以切分。但是又不想将上述符号替换,所以在re.sub()函数中的第二部分,使用了r"\1\n\2"来进行插入,此处“\1”的作用就是表示前面匹配的符号(比如句号),“\2”表示的是正则所匹配符号的后一位字符(例如句号后面的“用”等),中间的“\n”表示要插入的符号。当然前面不要忘了加上“r”。
结果为:
' 某制药有限公司 温阳补肾。
用于肾气亏虚,阳气不足所致的阳痿、早泄、遗精或弱精症弱精症 尚不明确。
每袋装20g 尚不明确。
18岁以下患者禁用。
开水冲服。
一次一袋,一日3次。
温阳补肾,用于肾气亏虚、阳气不足所致的阳痿、早泄、遗精或弱精症 '```