这就是我试图实现的想法$foo = $data['string']; $bar = trim(preg_replace($patterns, $replacements, $data['string']), "_" || "-"); echo $bar;我试图实现的结果:example_示例或示例 - 到示例在某些情况下,我使用preg_replace()的场景可能会以“_”或“-”结尾。在这种情况下,我想使用trim()来删除它。显然,情况是将这些字符保留在字符串中:Example_example_到Example_example或示例-示例-到示例-示例
3 回答
白衣染霜花
TA贡献1796条经验 获得超10个赞
的值是 ,因为 PHP 逻辑运算符总是返回一个布尔值,而这两个字符串都是真实的。第二个参数 to 必须是字符串,并转换为字符串 ,因此您正在从字符串中修剪该字符。"_" || "-"
TRUE
trim()
TRUE
"1"
的第二个参数应只是一个字符串,其中包含要从末尾删除的所有字符,而不是带有 的表达式。trim()
||
$bar = trim(preg_replace($patterns, $replacements, $data['string']), "_-");
慕雪6442864
TA贡献1812条经验 获得超5个赞
将要修剪的字符作为第二个参数提供给 :trim()
$string = 'Example_example_';
echo trim($string, '_-'); //Example_example
桃花长相依
TA贡献1860条经验 获得超8个赞
试试这个正则表达式:
(-|_)(?:^|\s)
$re = '/(-|_)(?:^|\s)/m';
$str = 'The is test-test_ and Test_test- and the end';
$str = preg_replace($re,'',$str);
echo $str;
将输出:
测试-测试并Test_testand结束
- 3 回答
- 0 关注
- 126 浏览
添加回答
举报
0/150
提交
取消