微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ltrim条带超出了所需

如何解决ltrim条带超出了所需

| 有没有一种方法来确切限制ltrim在PHP删除内容。 我得到以下结果:
$str = \"axxMyString\";
$newStr = ltrim($str,\"ax\");
// result MyString and it should have been xMyString
    

解决方法

如果您知道应该删除前两个字符,请使用:
$str = substr($str,2);
ltrim($str,$chars)
从字符串的左侧删除
$chars
中的所有事件。 如果您只想在等于
ax
时去除前两个字符,则可以使用:
if (substr($str,2) == \'ax\') $str = substr($str,2);
ltrim()上的手册页 substr()上的手册页     ,ltrim()手册:   去除空格(或其他字符)   从字符串的开头开始。 所以...
$newStr = ltrim($str,\"ax\");
这将删除字符串
$str
开头的每个字符
\'a\'
\'x\'
。 使用substr()获取所需字符串的一部分。     ,第二个参数确定将要修剪的每个字符。因为您同时定义了“ 10”和“ 11”,所以字母从字符串中删除了。 做就是了:
$newStr = ltrim($str,\"a\");
你应该没事的     ,您也可以使用正则表达式:
$string = preg_replace(\'#^ax#\',\'\',$string);
    ,我认为混乱之所以进入,是因为ltrim接收到要删除的字符列表,而不是字符串。您的代码将删除所有出现的
a
x
而不是字符串
ax
。因此,
axxxaxxaMyString
变成
MyString
axxaiaxxaMyString
变成
iaxxaMyString
。 如果您知道需要删除多少个字符,则可以使用
substr()
,否则对于更复杂的模式,可以通过
preg_replace()
使用正则表达式。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。