Javascript 格式化数字字符串

Javascript 格式化数字字符串,javascript,php,preg-replace,Javascript,Php,Preg Replace,我有以下字符串(表示它不是数字): wich总是22个字符长。我需要转变成: "087.049.0055.0120.0000.0000" 使用PHP,甚至在js/客户端上 我发现了类似的问题,但无法解决问题 我想有很多方法可以解决这个问题。我只是想要一些类似的东西: $x= format("00000", "xxx.xxx..xxx.x.x.x") 或 使用PHP,您可以使用以下功能: $str = preg_replace('~\A\d{3}\K\d{3}|\d{4}~', '.$0',

我有以下字符串(表示它不是数字):

wich总是22个字符长。我需要转变成:

"087.049.0055.0120.0000.0000"
使用PHP,甚至在js/客户端上

我发现了类似的问题,但无法解决问题


我想有很多方法可以解决这个问题。我只是想要一些类似的东西:

$x= format("00000", "xxx.xxx..xxx.x.x.x")


使用PHP,您可以使用以下功能:

$str = preg_replace('~\A\d{3}\K\d{3}|\d{4}~', '.$0', $str);
其中
\A
是字符串开头的锚点

\K
从匹配结果中删除左侧已匹配的所有内容


如果您需要更一般的方法来对字符串应用掩码,那么您在问题中共享的链接将为您提供方法

它总是22个字符长吗?你试过什么???@Rudie是的,总是22个字符长。
$x = preg_replace("/a;;w.;w;e;ew")
$str = preg_replace('~\A\d{3}\K\d{3}|\d{4}~', '.$0', $str);