我是新手preg_replace
。我有以下表达式,我想用字符串中的数字0-9
替换 #
。它返回相同的字符串而没有更改,我哪里出错了?我尝试了谷歌,但仍然找不到解决方案。谢谢。
$phonenumber = "0720123456";
$format = trim(preg_replace("/[^0-9]/", "#", $phonenumber));
我是新手preg_replace
。我有以下表达式,我想用字符串中的数字0-9
替换 #
。它返回相同的字符串而没有更改,我哪里出错了?我尝试了谷歌,但仍然找不到解决方案。谢谢。
$phonenumber = "0720123456";
$format = trim(preg_replace("/[^0-9]/", "#", $phonenumber));
[^0-9]
将匹配除数字之外的任何内容。
您需要使用[0-9]
或快捷方式\d
:
$format = trim(preg_replace("/\d/", "#", $phonenumber));
只需/[0-9]/
用作您的正则表达式。
您的表达式/[^0-9]/
意味着替换任何字符,但不是(通过^
)数字。
例子:
<?php
header('Content-Type: text/plain; charset=utf-8');
$phonenumber = "0720123456";
$format = trim(preg_replace("/[0-9]/", "#", $phonenumber));
echo $format;
?>
结果:
##########