【发布时间】:2015-02-03 09:10:15
【问题描述】:
我想在每 4 个句点之后插入<br>,但不是当句点代表小数或字母缩写时?
我已经通过this,但是由于我是正则表达式的新手,有人可以指导我如何在 Python 中编写等价物吗??
例如:-
'I'm a Python programmer. I love to code. I'm a boy. I earn $100.39 , from which I spend $50 in xyz. I eat biscuits. I eat snacks.I eat pizza etc. '
预期的 O/P
'I'm a Python programmer. I love to code. I'm a boy. I earn $100.39 , from which I spend $50 in xyz.<br> I eat biscuits. I eat snacks.I eat pizza etc. '
解释-
由于 100.39 中的 . 不被视为句点,它实际上是一个小数,因此该字符串中的第 4 个句点在 xyz 之后
【问题讨论】:
-
举个例子会更好。
-
请查看更新后的代码...
-
Regex 不是你需要的。
-
如何区分“美元走强”。从“我移民到美国这并不容易”。 ? “我们。”以后者结束一个句子,但不以前者结束。它可能需要自然语言处理来区分这些情况。当然,仅靠正则表达式是无法做到的。
-
正如@MarounMaroun 所说,正则表达式可能太复杂了。正则表达式不擅长上下文感知,您需要了解上下文才能确定“博士”、“夫人”。或“等”实际上,不是句子结尾。你需要一个语言解析器,例如nltk.org