preg_替换PHP和
PHP正则表达式有一个preg_替换PHP和,php,regex,preg-replace,Php,Regex,Preg Replace,PHP正则表达式有一个和操作符 我正在尝试替换所有内容,从文档到”和) 你知道怎么做吗 我试着为正则表达式找到一些教程,但找不到任何好的。如果你有任何好的网站或书籍,请给我一个链接。我在谷歌上搜索了很多 谢谢 编辑:误解 这是更换前的代码 <p>document.write(unescape(' <embed src="XXXXXX" type="application/x-shockwave-flash" wmode="window" width="712" height="
和操作符
我正在尝试替换所有内容,从文档
到”
和)
你知道怎么做吗
我试着为正则表达式找到一些教程,但找不到任何好的。如果你有任何好的网站或书籍,请给我一个链接。我在谷歌上搜索了很多
谢谢
编辑:误解
这是更换前的代码
<p>document.write(unescape('
<embed src="XXXXXX" type="application/x-shockwave-flash" wmode="window" width="712" height="475"%.35" allowFullScreen="true" ></embed>
')));</p>
及
你是说还是
您想剥离范围[“文档”,“'”]
和范围[“文档”,“””]
,对吗?这类似于范围[“document”、“'”或“)”]
在正则表达式中,|
表示“或”
在正则表达式中,AB是A和B
A | B是A或B
因此,如果要匹配”)
,只需将其放入正则表达式中即可
另一方面,如果要将'
或)
作为字符串的结尾进行匹配,请使用'|)
或[')]
使用类似的方法来尝试你的正则表达式。右边还有说明。
- 使用括号创建匹配的组
- 使用$1引用它
$output=preg_replace(“/document[^']*”([^']*)[^;]*;/”、“$1”、$output)代码>您真正想要的是替换两个部件,并在这两个部件之间保留一些内容。要使其不匹配不需要的部分,请使用显式字符类:
= preg_replace("/document[\w.(]+['](.*?)['][);]+/s", '$1', $output);
因此,它可以将(“
和”)
中包含的任何内容与后者的不同数量相匹配。最常用。这些介绍基本上是可以理解的。另外,请查看此工具列表,以获取有关制作用于使用分隔符的regexpressions.Creds的帮助。很多新来者都不喜欢。:)@马里奥,我以前检查过。它看起来对新来者并不友好。我会再看一次,谢谢:)抱歉误解了,用一个例子更新了第一篇帖子。@Muazam:我还是不太明白。也许我太累了。@Muazam:你的问题没有要求我:(我想把它们都匹配起来,但不是按照顺序。谢谢Syntax错误,意外的']',看起来像是高级正则表达式。谢谢你的帮助:)代码没有替换任何内容或给出任何错误。谢谢你的帮助。@Muazam:没错。请使用/s
修改器重试。以你的例子为例。
<p>
<embed src="XXXXXX" type="application/x-shockwave-flash" wmode="window" width="712" height="475"%.35" allowFullScreen="true" ></embed>
</p>
document.write(unescape('
')));
$output = preg_replace('/document.*(\'|\))/', '', $output);
= preg_replace("/document[\w.(]+['](.*?)['][);]+/s", '$1', $output);