正则表达式:排除尾随.0但包括所有字符串

时间:2016-09-08 17:26:23

标签: regex

我有一些浮动/字符串,如下所示: 12339.0 133339 159.0 dfkkei 某物 32439

其中一些人落后.0。如何在没有尾随.0作为常规压制的情况下显示所有数字,包括不是数字的项目?我尝试了类似的东西,希望它会从捕获组中排除所有.0,但它不起作用:(.*)(:?.0)?

https://regex101.com/r/sC6jO2/1

1 个答案:

答案 0 :(得分:2)

您可以使用更简单的正则表达式:

\.0+$

用空字符串替换,请参阅regex demo

正则表达式匹配.\.),后跟一个或多个零(0+),直到字符串末尾($)。

如果您计划在初始尝试时匹配两个组,请使用

^(.*?)(?:\.0+)?$

请参阅此regex demo

下面,

  • ^ - 字符串开头
  • (.*?) - 第1组捕捉除换行符之外的任何0 +字符,尽可能少(= 懒惰),直至
  • (?:\.0+)? - . +一个或多个零的可选序列
  • $ - 在字符串的末尾。