Php 句子中的特定链接 $input_lines='this photos{img='3512.jpg',alt='Title'}和{img='3513.jpg',alt='Title2'}必须替换此处与图像相关的任何图像代码'; echo preg_replace(“/({\w+/”,”,$input_行);
正则表达式代码:Php 句子中的特定链接 $input_lines='this photos{img='3512.jpg',alt='Title'}和{img='3513.jpg',alt='Title2'}必须替换此处与图像相关的任何图像代码'; echo preg_replace(“/({\w+/”,”,$input_行);,php,regex,preg-replace,Php,Regex,Preg Replace,正则表达式代码: /({\w+/ 图像链接: 句子中的{img='3512.jpg',alt='Title'}和{img='3513.jpg',alt='Title2'} 转换: 此照片和此处与图像相关的任何图像代码都必须替换。 我得到了句子中的图像链接,但是正则表达式代码有什么问题吗?您的({\w+模式只匹配并捕获到第1组a{和打开大括号后的一个或多个单词字符。在您的替换模式中,有$1和$2替换反向引用无法“工作”因为你只有一个捕获组 你可以用 $input_lines = 'this pho
/({\w+/
图像链接:
句子中的{img='3512.jpg',alt='Title'}
和{img='3513.jpg',alt='Title2'}
转换:
此照片
和此处与图像相关的任何图像代码都必须替换。
我得到了句子中的图像链接,但是正则表达式代码有什么问题吗?您的({\w+
模式只匹配并捕获到第1组a{
和打开大括号后的一个或多个单词字符。在您的替换模式中,有$1
和$2
替换反向引用无法“工作”因为你只有一个捕获组
你可以用
$input_lines = 'this photos {img='3512.jpg', alt='Title'} and {#img='3513.jpg', alt='Title2'} any image code here related to image must be replaced.';
echo preg_replace("/({\w+)/", "<img src='https://imgs.domain.com/images/$1' alt='$2'/>", $input_lines);
$re=“/{}\w+=”([^']*)”\s*,\s*\w+=”([^']*)”}/”;
$str=“此照片{#img='3512.jpg',alt='Title'}和{#img='3513.jpg',alt='Title2'}必须替换此处与图像相关的任何图像代码。”;
$subst=“”;
echo preg_替换($re、$subst、$str);
请参阅,输出
必须替换此照片以及此处与图像相关的任何图像代码。
看
详细信息
-子字符串{#
{#
-1个或多个字母、数字或/和\w+
\u
-a='
文字子字符串='
-第1组:除([^']*)
“
-a'
'
-用0+空格括起来的逗号\s*,\s*
-1个或多个字母、数字或/和\w+=
和一个\u
='
-a'
'
-第2组:除([^']*)
“
-一个}
字符串'}
$re = "/{#\w+='([^']*)'\s*,\s*\w+='([^']*)'}/";
$str = "this photos {#img='3512.jpg', alt='Title'} and {#img='3513.jpg', alt='Title2'} any image code here related to image must be replaced.";
$subst = "<img src='https://imgs.domain.com/images/\$1' alt='\$2'/>";
echo preg_replace($re, $subst, $str);