我有一个字符串,如:
a b c
我需要最终得到的是:
a* b* c*
我想我需要针对空格str_replace
并用asterisk
和space
替换它们。
处理此问题的最佳方法是什么?
答案 0 :(得分:2)
假设字符串中只包含字母数字字符,因为这就是示例所显示的内容,您可以使用preg_replace
来跟踪带有星号的每个字符。
$string = preg_replace('/[a-zA-Z0-9]/', '$0*', $string);
此正则表达式匹配字符,然后使用回调替换它们,同时附加星号。
显然,如果你需要匹配其他字符,那么你可以将它们添加到正则表达式中。
在我的空白字符匹配之前发布的其他答案,但是在某些情况下会导致麻烦,例如如果最后一个字符后面没有空格怎么办?然后它不匹配,没有放置星号。最好匹配你想要的字符,然后附上一个星号。
答案 1 :(得分:0)
尝试:
<?php
$newarray = str_replace(" ", "* ", "a b c ");
?>
答案 2 :(得分:0)
您可以使用str_replace()
。 str_replace()
函数将某些字符替换为字符串中的其他字符。
str_replace(' ', '* ', 'a b c ');