Просмотр полной версии : небольшой вопрос
rubik-nerubik
03.09.2009, 23:29
как мне реализовать путём пхп
такое
есть строка:
abadada
в неё надо вставить символ |, а именно так:
a|b|a|d|a|d|a
ну тут либо циклом идти с запоминанием символов, либо преобразовывать в массив, и в него добавлять элементы(array merge какой-нибудь)
rubik-nerubik
03.09.2009, 23:45
ну мож набросаешь?
не, это как-то заёбно, лучше юзать что-то типа:
function insert_char($index, $str, $char) //добавляет символ $char в строку $str на позицию $index
{
$str_prev = substr($str, $index, -$index);
$str_next = substr($str, $index, strlen($str) - $index);
return $str_prev.$char.$str_next; //возвращаем новую строку, не меняя предыдущую
}
rubik-nerubik
03.09.2009, 23:53
че-то как-то отказывается работать) на денвере точно)
$str = 'fsdgssdhs';
$str = preg_replace('/(.{1})/', '$1|', $str);
print substr($str, 0, strlen($str)-1);
rubik-nerubik
04.09.2009, 00:02
каими респект и уважуха)
$str = 'abadada';
$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
$imp = implode("|", $chars);
echo $imp;
Тоже предложу свой вариант ответа =)
Зачем регулярные, любая строка это массив.
$str = 'abadada';
for($i=0; $i<strlen($str); $i++)
$finish .= $str[$i]."|";
echo trim($finish,'|');
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot