Как удалить все нечисловые и не буквенные символы, идущие в начале строки до первой буквы или цифры
Есть строка
$str = "=~*_Размер 3 * 2";
Надо удалить все символы, которые идут в начале строки до первой встреченной в строке буквы (русской или латинской) или цифры. То есть из данной строки на выходе я хочу получить
Размер 3 * 2
Пробовал что-то типа такого
$str = preg_replace("/([^a-zA-Z0-9А-Яа-я]+?)[a-zA-Z0-9А-Яа-я]/u", "", $str);
но на выходе получается
азмер
Ответы (1 шт):
Автор решения: Wiktor Stribiżew
→ Ссылка
Используйте
<?php
$str = "=~*_Размер 3 * 2";
echo preg_replace('/^[^\p{L}\d]+/u', '', $str);
См. пример кода на PHP.
Подробности
^- начало строки[^- начало отрицающего символьного класса, находит все символы, отличные от\p{L}- любой буквы\d- цифры
]+- один и более раз