У меня есть строка вроде этого:
" 23 PM"
Я хотел бы удалить 23
чтобы я остался с PM
или (с усеченным пространством) просто PM
.
Какие-либо предложения?
Нужно быть в PHP
echo trim(str_replace(range(0,9),'',' 23 PM'));
Может делать с ltrim
ltrim(' 23 PM', ' 0123456789');
Это приведет к удалению любого числа и пробелов с левой стороны строки. Если вам это нужно для обеих сторон, вы можете использовать trim
. Если вам это нужно только для правой стороны, вы можете использовать rtrim
.
preg_replace ("/ [0-9] /", "", $ string);
Можно также использовать str_replace
, который часто является более быстрой альтернативой RegEx.
str_replace(array(1,2,3,4,5,6,7,8,9,0,' '),'', ' 23 PM'); // or str_replace(str_split(' 0123456789'), '', ' 23 PM');
который заменил бы любое число 0-9 и пространство из строки, независимо от положения.
Если вам нужны только два последних символа строки, используйте substr с отрицательным стартом:
$pm = substr(" 23 PM", -2); // -> "PM"
$str = preg_replace("/^[0-9 ]+/", "", $str);
Regex
preg_replace('#[0-9 ]*#', '', $string);
Вы также можете использовать следующее:
preg_replace('/\d/', '',' 23 PM' );