基本上我有这个字符串:
"We spent 10minutes talking while traveling 20kms"
如何将其转换为:
"We spent 10 minutes talking while traveling 20 kms"
基本上分隔附加到单词的每个数字或数字。
答案 0 :(得分:3)
你可以使用每个人的朋友,正则表达式!
$str = preg_replace("/\d+\B/", "$0 ", $str);
这将匹配紧跟在它们后面的非字边界的一系列十进制数字。
或者,你可以这样做......
$str = preg_replace("/(\d)(\D)/", "$1 $2", $str);
这将匹配紧跟在非十进制数字后面的十进制数字。
答案 1 :(得分:1)
这应该有效:
$str = preg_replace('/(\d)([a-z])/i', '$1 $2', $str);
\d
匹配一个数字,[a-z]
匹配一个字母。