【发布时间】:2019-04-24 10:44:17
【问题描述】:
我试图从忽略所有非数字(如逗号、符号等)的字符串中获取数字。我有一个这样的正则表达式:
(?:[\d]+)
对于“45,00%”,结果如下:
Match 1
Full match 0-2 45
Match 2
Full match 3-5 00
但我想要完整的单匹配为 4500。我该怎么做?
【问题讨论】:
-
将
\D+替换为空字符串,这将只留下数字字符串。但是如果你有十进制数字,那么你需要稍微改变一下策略。 -
\D+ 在哪里?我在我的代码中看到它
-
不不,我是说如果你想要
4500出45,00%,那么实现它的一种方法是,用空字符串替换所有由\D表示的非数字。 -
如何使用正则表达式替换?我没有在这里使用 python 代码。我只想抓到号码
-
请为每条记录包括将出现在列中的完整值。