1

我是新手preg_replace(),我一直在努力让它发挥作用,但我做不到,所以 StackOverflow 是我最后的机会。

我有一个字符串,其中有一些:

('pm_IDHERE', 'NameHere');">

我希望它被什么都替换,所以它需要 2 个通配符NameHerepm_IDHERE.

但是我已经尝试过了,但我自己失败了,所以有人能给我正确的代码吗,谢谢:)

4

1 回答 1

3

更新:

您快到了,您只需将替换设为空字符串并正确转义括号,否则它们将被视为捕获组(顺便说一句,您不需要):

$str = preg_replace("#\('pm_.+?', '.*?'\);#si", "", $str);

您可能也不需要修饰符si但这取决于您。


老答案:

可能str_replace()就足够了:

$str = "Some string that contains pm_IDHERE and NameHere";
$str = str_replace(array('pm_IDHERE', 'NameHere'), '', $str);

如果这不是你的意思,pm_IDHERE实际上是这样的pm_1564,那么是的,你可能需要正则表达式。但是如果NameHere没有实际的模式或结构,则不能用正则表达式替换它。
而且您肯定必须更好地解释您拥有什么样的字符串以及您想要替换什么样的字符串。

于 2010-06-26T20:10:54.467 回答