【发布时间】:2021-02-16 16:10:19
【问题描述】:
我有以下文字。我想收集所有包含数字的子句(从逗号或句点到逗号或句点)。我设法创建了以下正则表达式来收集数字和它之后的部分,但是由于我的数字里面可以有逗号或句点,我不知道如何抓住它之前的单词。带有部分的句子我会喜欢加粗:
为了完成本次献祭,我们将进入 与 OrION Capital Structure 签订远期购买协议 Solutions UK Limited 或 OrION,我们的赞助商的附属公司,根据 OrION 将承诺向我们购买 10,000,000 远期购买单位,或由其选择,最多总计 30,000,000 个远期购买单位,每个单位包含一个 A 类 普通股或远期购买股,以及三分之一的 认股权证购买一股 A 类普通股,或远期购买 认股权证,每单位 10.00 美元,或总额为 100,000,000 美元, 或由 OrION 选择,总额不超过 300,000,000 美元,以 与我们的关闭同时关闭的私募 初始业务合并。
我要收集的东西:
["pursuant to which OrION will commit that it will purchase from us 10,000,000 forward purchase units",
"or at its option up to an aggregate maximum of 30,000,000 forward purchase units", "for $10.00 per unit", "or an aggregate amount of $100,000,000", "or at OrION’s option up to an aggregate amount of $300,000,000"]
我当前编写的正则表达式获取数字和后面的部分,直到下一个逗号或句点。
[0-9]{1,2}([,.][0-9]{1,2})?.*?[\.,]
如何收集句子的一部分(以句点或逗号开头),以及其中可以有小数或千位分隔符的数字,然后是句子的一部分,直到下一个逗号或句点?
编辑:anubhava 和 bb1 都给出了正确的解决方案。 anubhava 完全按照我的要求解决了这个问题,这是正确的答案。然而,bb1 为一定会发生的事情做准备(我没有想到),所以最后我使用了他的答案,但将 anubhava 标记为给出解决方案的人,因为这是我所要求的确切解决方案。
编辑 2:anubhava 更新了他的答案,因此它解决了与 bb1-s 相同的问题。
【问题讨论】:
-
不正确的欺骗。这个问题是不同的,甚至在欺骗答案中的一个答案都不是当前问题的解决方案。