Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 正则表达式标识并剥离';。00';串串_Php_Jquery_Regex_Content Management System_Number Formatting - Fatal编程技术网

Php 正则表达式标识并剥离';。00';串串

Php 正则表达式标识并剥离';。00';串串,php,jquery,regex,content-management-system,number-formatting,Php,Jquery,Regex,Content Management System,Number Formatting,我的用户在他们的商店中输入产品,我的PHP CMS以正常的2位小数打印价格。我的问题是,所有整数价格,即80打印为80.00——我只想打印存在的十进制整数,因此80.95打印,但80.00仅打印为80 数字中没有符号,只有句点 我可以在页面生成时使用正则表达式在服务器端识别和转义字符串,我更喜欢这样做,而不是在页面加载时使用jQuery进行匹配和替换,因此是否有一个用于.00的正则表达式,它不使用句点作为通配符运行?正则表达式对我来说是一个弱点,所以我很抱歉每次找不到答案时都会发帖子。您可以使用

我的用户在他们的商店中输入产品,我的PHP CMS以正常的2位小数打印价格。我的问题是,所有整数价格,即
80
打印为
80.00
——我只想打印存在的十进制整数,因此
80.95
打印,但
80.00
仅打印为
80

数字中没有符号,只有句点


我可以在页面生成时使用正则表达式在服务器端识别和转义字符串,我更喜欢这样做,而不是在页面加载时使用jQuery进行匹配和替换,因此是否有一个用于
.00
的正则表达式,它不使用句点
作为通配符运行?正则表达式对我来说是一个弱点,所以我很抱歉每次找不到答案时都会发帖子。

您可以使用类似于:

(\d+)(\.00)
和第1组匹配,找出句号前的数字。查看rubular链接以交互方式使用它


您可以在正则表达式中转义圆点:\。然后它将匹配一个点而不是任何符号。我想最好的解决方案是更改格式以正确显示数字,而无需进一步操作,但我对PHP的了解还不够,无法在这方面为您提供帮助。既然
\。
起了作用:)为什么不直接将其转换为int<代码>num.indexOf('.00')>-1?parseInt(num):num谢谢,这只是一个用
\.00
转义
的问题-我现在已经用零替换了
.00
的所有实例,并且它已经工作了。