删除字符串

时间:2018-04-09 00:11:22

标签: php replace

我正在使用PHP,我试图从字符串的结尾和开头删除所有下划线字符。

这是字符串:____a_b_c__________
我希望结果为:a_b_c

我尝试过这个正则表达式,但它不起作用:

preg_replace('/[^a-z]+\Z/i', '', '____a_b_c__________');

1 个答案:

答案 0 :(得分:4)

为什么不使用trim

$string = trim($string, '_');

正则表达式用于模式匹配___不是它强调的模式。

但如果我要使用正则表达式,我会做这样的事情:

$string = preg_replace('/^_+|_+$/', '', $string);

用于正则表达式

  • ^是一行的开头
  • _为下划线,+为一个或多个
  • |是OR
  • _为下划线,+为一个或多个
  • $是行尾

然后我们将其替换为''