0

我有一个带有管道的字符串 | 在里面。例如:

$string = 'hello | hello <htmltags> etc|Any character';

不,我想做的是删除最后一个管道,然后是任何字符。这样我的结果就会在 preg_replace 之后出现。

$replaced_string = 'hello | hello <htmltags> etc';

你能帮我吗,我应该使用什么正则表达式模式。

4

1 回答 1

3

那么你应该替换这个

\|[^|]*$

用空字符串

\|匹配一个|

[^|]*$匹配 0 个或多个|直到字符串结尾的字符(因为$锚点)

在php中它看起来像

preg_replace('/\|[^|]*$/', '', $string);

正则表达式/周围是正则表达式分隔符

每个程序员都应该知道的关于正则表达式的知识
免责声明:我自己的博客

于 2012-05-11T10:51:12.750 回答