问题
I am using PHP and I am trying to remove all underscore characters from the end and beginning of a string.
Here's the string: ____a_b_c__________
And I want the result to be: a_b_c
I have tried with this regular expression but it's not working:
preg_replace('/[^a-z]+\Z/i', '', '____a_b_c__________');
回答1:
Why not just use trim:
$string = trim($string, '_');
Regex is for pattern matching ___
is not a pattern it's just underlines.
But if I was gonna use a Regex, I'd do something like this:
$string = preg_replace('/^_+|_+$/', '', $string);
For the regular expression
^
is the start of a line_
is underline, the+
is one or more|
is OR_
is underline, the+
is one or more$
is the end of line
Then we just replace it with ''
来源:https://stackoverflow.com/questions/49724039/remove-specific-characters-at-beginning-and-end-of-string