PHP 未知修饰符


PHP Unknown Modifier

对此有问题,并回顾了以前的答案,但仍然似乎不明白。这是代码:

preg_replace('/^.*"([http|https]://test.co/v/.*)/embed.*width=".*$/', '$1', $str);

我收到未知修饰符"/"错误。

看看之前的答案,看起来我必须消除/那是在查询中使用,所以我在每个正斜杠之前添加了一个~,但仍然相同错误。我猜我不太明白...任何建议表示赞赏!

转义正则表达式中的/

preg_replace('/^.*"((?:http|https):'/'/test'.co'/v'/.*)'/embed.*width=".*$/', '$1', $str);

您可以使用不同的delimter,例如#

preg_replace('#^.*"((?:http|https:)//test'.co/v/.*)/embed.*width=".*$#', '$1', $str);

注意

  • 您可以缩短http|https https?

  • 逃离.co .'.co