我有一个这样的字符串:
" 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
,这通常是比正则表达式更快的替代方法。
str_replace(array(1,2,3,4,5,6,7,8,9,0,' '),'', ' 23 PM');
// or
str_replace(str_split(' 0123456789'), '', ' 23 PM');
$str = preg_replace("/^[0-9 ]+/", "", $str);
正则表达式
preg_replace('#[0-9 ]*#', '', $string);
preg_replace('/\d/', '',' 23 PM' );
trim()
函数通过使用点语法在“字符掩码”参数中允许一系列字符。
代码:(演示)
// v--------literal spaces
trim(" 23 PM", ' 0..9')
// ^^^^----all digits
// output: PM