objective-c - 这些情况的正则表达式是什么?

标签 objective-c ios regex

这些情况的正则表达式是什么:

29000.12345678900,预期结果29000.123456789

29000.000,预期结果29000

29000.00003400,预期结果29000.000034

简而言之,如果在小数点后面找不到1-9,我想去掉0点,如​​果实际上这个数字可以认为是整数,我也想去掉点(.)。

我使用这个正则表达式

(?:.0*$|0*$)

但它给了我这个结果:

29123.6 来自 29123.6400,4 已经从那里消失了。

当我单独测试正则表达式时,它工作得很好,

.0*$29123.0000

给我 29123

0*$29123.642300

给我 29123.6423

我是否遗漏了组合正则表达式的内容?

最佳答案

如果您认为正则表达式是最好的方式,您可以使用如下内容:

\.?0+$

它适用于两种情况:

> '12300000.000001130000000'.replace(/\.?0+$/g, '')
"12300000.00000113"
> '12300000.000000000000'.replace(/\.?0+$/g, '')
"12300000"

关于objective-c - 这些情况的正则表达式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14180972/

相关文章:

ios - 如何在 Objective C 中通过点创建二维码?

ios - UIImageView 在以编程方式创建时显示离散图像

ios - 如何预加载纹理图集以获得更好的 FPS?在 swift

python - 正则表达式不适用于字符串的最后几个字母

java - 如何创建匹配符号 (、"和 == 的正则表达式

c# - 正则表达式帮助 - 点 (.) 后最多需要 3 个数字

ios - 通过 IOS 应用内购买获得额外功能的选项

objective-c - 如何通过菜单栏项调用 NIB 文件?

ios - 重复CAAnimation之前的延迟

iphone - 为什么 ViewController 类的单独实例会影响前一个实例?