<分区>
我想删除包含 numbers
和 text
的字符串中的点 (.
)。
例如:S.D.M.S
到 SDMS
但我想保留 numbers
中的 (.
) 原样。
例如:123.50
到 123.50
我尝试了 str_replace()
,但它删除了所有 (.
)
如何在 PHP
中实现?
<分区>
我想删除包含 numbers
和 text
的字符串中的点 (.
)。
例如:S.D.M.S
到 SDMS
但我想保留 numbers
中的 (.
) 原样。
例如:123.50
到 123.50
我尝试了 str_replace()
,但它删除了所有 (.
)
如何在 PHP
中实现?
最佳答案
使用 preg_replace
:
$result = preg_replace('/(?<!\d)\.(?!\d)/', '', $string);
在哪里
(?<!\d)
是负向回顾,假设点之前没有数字。(?!\d)
是负前瞻,假设点后没有数字。关于PHP - 从文本中删除点但排除数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41313318/
相关文章:
php - 除了 excel.php 配置文件之外,如何为 Laravel 5.2 的 maatwebsite 的 laravel excel 包 2.0.8 更改 startRow?
regex - 如何编写正则表达式来匹配 '012356789'(无 4)
html - 正则表达式 "does not contain attribute"在 html 中
php - Selenium 服务器 - 为正在测试的应用程序预定义常量?
php - PHP for MySQL 查询中 while() 循环内的随机跳转