regex 如何在python中使用正则表达式删除除第一个点之外的所有点?[duplicate]

mzaanser  于 2023-01-14  发布在  Python
关注(0)|答案(1)|浏览(69)
    • 此问题在此处已有答案**:

(19个答案)
2天前关闭。
我有代码,删除所有不必要的符号,只留下数字和点。如何删除所有的点,除了第一?

data = 'Price: 21.99$ for one coin and etc.,'
res = re.sub('[^0-9.]', '', data)

它将显示21.99.,但我需要21.99

6ojccjat

6ojccjat1#

也许re.sub并不是适合这项工作的工具,与其删除不需要的东西,为什么不直接 * 提取 * 需要的东西呢?

>>> m = re.search("(\d+\.\d+)",data)
>>> m.group(1)
'21.99'

(将search替换为findall以在list中获得多个匹配项)

相关问题