重新拆分不给出正则表达式的最后一个字符

2024-10-05 15:24:29 发布

您现在位置:Python中文网/ 问答频道 /正文

n='Sumit,raj. ramesh is good. calm down'
re.split(r'[a-z0-9]\.',n)

对于上面的字符串n和正则表达式,它给出了下面的结果。你知道吗

['Sumit,ra', ' ramesh is goo', ' calm down']

我不知道为什么要截短单词的最后一个字符。我想在点处分句,但我想在点前加全文,但我得不到。请帮忙。你知道吗


Tags: 字符串reis字符单词downrasplit
1条回答
网友
1楼 · 发布于 2024-10-05 15:24:29

在上拆分的文本不包括在输出中。您只想在.上拆分:

re.split(r'(?<=[a-z0-9])\.' ,n)

如果前面有小写字母或数字,则使用肯定的look-behind断言((?<=...)仅匹配.,但最重要的是,在匹配中不包括这些字母或数字本身。你知道吗

演示:

>>> import re
>>> n = 'Sumit,raj. ramesh is good. calm down'
>>> re.split(r'(?<=[a-z0-9])\.' ,n)
['Sumit,raj', ' ramesh is good', ' calm down']

相关问题 更多 >