Я ищу быстрый и хороший способ добавить "-" перед каждым словом в строке. Например, «бла бла бла» должно стать «-бла -бла -бла». Я не хочу создавать массив из этой строки, затем отображать ее и т. Д. Это выглядит как неправильный и медленный путь. Есть ли у вас какие-либо предложения по этому поводу?
Если мы предположим, что слово всегда отделено пробелом и что пробел не имеет другого специального значения, которое мы можем сделать:
$str = 'bla bla bla'; $symbol = '-'; $newString = $symbol . str_replace(' ', " $symbol", $str); echo $newString;
Вывод:
-bla -bla -bla
Вы должны использовать регулярные выражения:
echo preg_replace('/(\w+)/', '-$1', 'bla bla bla');
Поиск в Интернете для регулярных выражений, совместимых с Perl для более подробной информации!
Как насчет
preg_replace('/(\w+)/i', '-$1', $string);