use*_*134 1 php regex preg-replace
如何使用正则表达式使用preg_replace删除给定字符之后的任何内容以及给定字符之后的任何内容?当然,这可以通过爆炸和条带化等许多其他方式来完成.但我对preg_replace和regex很好奇.
所以我从下面的字符串中唯一需要的是03b并删除/和斜杠(/)之后和/和点(.)之后的所有内容
$string = 'rmbefore/03b.rmafter'
Run Code Online (Sandbox Code Playgroud)
提前致谢!
您可以在preg_replace中使用反向引用来执行此操作:
preg_replace('#.*/([^\.]+)\..*#', '$1', $input);
Run Code Online (Sandbox Code Playgroud)
这会搜索除斜杠之外的任何内容,然后将下面的字符串作为一个点,将其放在第1组(即围绕它的'()'),然后是一个点和其他内容,并将其替换为第1组的内容(括号内的表达式,在您的示例中应为"03b").这是一个关于正则表达式的好网站:http://www.regular-expressions.info/php.html.
希望这可以帮助.