我有一个很长的文本字符串,其中新行的格式很差。我想删除所有的换行符,除非换行符跟在.
、?
、!
、:
字符后面(这表示句子结束)。我也不想删除换行符,如果它后面紧跟着一个数字或另一个换行符-这将表明一章结束。我正在使用python re
作为正则表达式
这是到目前为止我的正则表达式(?<!\?|\.|:|\n)\n(?![\d]|\n)
带有7个单元测试用例的正则表达式示例:https://regex101.com/r/nG1gU7/1118
我的测试在以下示例中失败:
First paragraph. <-- note a trailing space(s) after the period
Second paragraph
我该如何解决这个问题
一种选择是在匹配}{}或换行符之一后,使用regex PyPi module和在lookback中匹配不带换行符的可选空白字符
?
{您可以使用替换
|
缩短为使用列出所有字符的character classRegex demo(选择JavaScript引擎作为示例)
通过对上述文本的研究,我们可以得出结论,实际的错误格式化是由于存在大量空格造成的。 因此,它可以通过用一个类似于
\1 \2
的空格来替代单词/字母之间间隔的每个块来处理根据以下链接:https://regex101.com/r/feRwne/1
最后,将结果复制并粘贴到word文档中,以确保结果是否可接受
相关问题 更多 >
编程相关推荐