我想根据我想要的模式将字符串与空格分开。每两个字,有时三个。例如:
$string = 'marketplace';
成为
$string = 'mark et pl ace';
我知道preg_replace
可以做到这一点,但我不知道这种模式。谁能告诉我怎么做?感谢
答案 0 :(得分:5)
如果你想使用preg_replace ....,但@ billyonecan的str_split可能是更好的方法。
preg_replace('/(..)/','$1 ', $string);
答案 1 :(得分:3)
此?
$string = 'market';
echo implode(" ",str_split($string,2));
答案 2 :(得分:1)
此模式适用于preg_replace
:
$result = preg_replace("/(\\w{2})/uim", "$1 ", $string);
示例:
答案 3 :(得分:1)
只需使用
implode(" ",str_split($string, 2))
这里重要的代码是
<?php
$string = "market";
echo implode(" ",str_split($string, 2));
?>
str_split
将$string
转换为内容包为2个字符的数组。
然后implode
将使用空格连接数组b / w所有数组值。
答案 4 :(得分:0)
使用此功能。只需决定空间应放在哪个步骤。
function split_by_position($string, $position){
$splitted = str_split($string, $position);
foreach($splitted as $part){
$result .= $part.' ';
}
echo $result;
}
$string = 'market';
echo split_by_position($string, 2);
billyonecan的解决方案看起来确实更好,而且肯定更短。我建议你用他的。 ^^