kuzmit4
27.05.2015 - 20:36
Есть необычная задача.
Переменная с набором символов, как вырезать все повторяющиеся символы, т.е. чтобы после вырезания каждый символ встречался один раз
$a = "fg3wff3g99e9sfd";
Можно ли такое сделать ?
brevis
27.05.2015 - 20:55
$a = "fg3wff3g99e9sfd";
echo count_chars($a, 3);
_____________
Чатик в телеге
kuzmit4
27.05.2015 - 21:25
Цитата (brevis @ 27.05.2015 - 20:55) |
$a = "fg3wff3g99e9sfd"; echo count_chars($a, 3); |
Да работает, но не совсем так как нужно.
Сейчас символы не повторяются, но такой вариант выводит сначала все цифры, а потом все буквы. Можно как-то выводить в том порядке в котором они в переменной $a, т.е. цифры и буквы вперемешку чтобы были.
brevis
27.05.2015 - 21:30
$a = "fg3wff3g99e9sfd";
echo implode('', array_unique(str_split($a)));
_____________
Чатик в телеге
killer8080
27.05.2015 - 22:06
$a = "fg3wff3g99e9sffffffd";
echo $a.'<br>';
$a = preg_replace('#((.)\\2+)#', '<span style="background-color: yellow; color: red;">$1</span>', $a);
echo $a;
volter9
27.05.2015 - 22:54
kuzmit4Можно так:
$a = "sda623dgha2e2asdfsa";
echo preg_replace('/(?:(.)(?=.*?\1))/', '', $a);
Только при этом последнии найденные символы останутся, а все до последних удаленны.
_____________
Мой блог