Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
删除带有regexp的字符串,只留下带有img标记的字符串-PHP_Php_Regex_Preg Replace - Fatal编程技术网

删除带有regexp的字符串,只留下带有img标记的字符串-PHP

删除带有regexp的字符串,只留下带有img标记的字符串-PHP,php,regex,preg-replace,Php,Regex,Preg Replace,我有一个字符串,其中包含以前由WP格式化的内容,并且它包含几种类型的[caption]标记。示例: [标题(此处的属性)]一些文本[/caption] [说明(此处的属性)]©姓名[/说明] [caption id=“attachment_49532”align=“aligncenter”width=“530”][/caption] 我只需要删除那些包含)后跟人员姓名的内容 我试过: preg_replace("/\[caption(.*?)\]©(.*?)\[\/caption\]/

我有一个字符串,其中包含以前由WP格式化的内容,并且它包含几种类型的
[caption]
标记。示例:

[标题(此处的属性)]一些文本[/caption]

[说明(此处的属性)]©姓名[/说明]

[caption id=“attachment_49532”align=“aligncenter”width=“530”][/caption]

我只需要删除那些包含
后跟人员姓名的内容

我试过:

preg_replace("/\[caption(.*?)\]©(.*?)\[\/caption\]/","",$string);
但是,只有当作为输入字符串,我只有一个[caption]标记时,它才起作用

$string = "[caption (parameters here)]©name and surname[/caption]";
而不是包含更多元素的字符串


我做错了什么?

启用DOTALL修饰符,使正则表达式中的点也与换行符匹配

preg_replace('/\[caption\b.*?\]©.*?\[\/caption\]/su',"",$string);

启用DOTALL修饰符,使正则表达式中的点也与换行符匹配

preg_replace('/\[caption\b.*?\]©.*?\[\/caption\]/su',"",$string);

这里有一个正则表达式,您可以提供一个
字符串的示例,其中包含更多的元素
?你的意思是
[caption(attributes here)][bold]test[/bold]©name and names[/caption]
?如果属性值中有一个
])
怎么办?这里有regex,你能提供一个
字符串的示例,其中包含更多的元素吗?你的意思是
[标题(此处的属性)][bold]测试[/bold]©姓名[/caption]
?如果属性值之一中有
])
怎么办?