当前位置:Gxlcms > PHP教程 > 请教一个正则表达式的意思,急用

请教一个正则表达式的意思,急用

时间:2021-07-01 10:21:17 帮助过:19人阅读

ob_start();
ob_end_clean();
$output = preg_match_all('//i', $post->post_content, $matches);
$first_img = $matches [1] [0];

上面几句话的意思, ob_start(); 和 ob_end_clean(); 是将文章的内容读入缓冲区
$output = preg_match_all('//i', $post->post_content, $matches);
这句话的意思是匹配出文章中所含的图片
$first_img = $matches [1] [0];
这句话是把第一幅图片读取并保存在 $first_img中

我想知道的是,这个正则表达式preg_match_all('//i', $post->post_content, $matches);
的具体规则,是怎么匹配的,$post->post_content,是内容,$matches是图片数组,前面的('//i',
是具体代表怎么匹配?


回复讨论(解决方案)

对于正则规则串:'//i'
[\'"]([^\'"]+)[\'"] 表示以 单(双)引号 开始,以 单(双)引号 结束的内容, ([^\'"]+) 表示待提取的 单(双)引号 中的内容

感谢版主:
我现在遇到的一个问题我百思不得其解,就是我作为附件上传了一个word文档,这个文档里并没有图片,可是也匹配出一个失真的马赛克图形来,我不知道这个是怎么匹配出来的
这个src属性,是否可以认为在哪里可以找到生成的图形文件?

word文档 不是文本文件,能匹配出东西纯属偶然

感谢版主:
我是否可以这么认为,就是这个文档里面如果含有图片,就会生成img标签,src就是这个标签的位置,然后把这个截取出来,放到
$matches中,'//i'最后那个/i是啥意思?

word文档 不是文本文件,能匹配出东西纯属偶然

i 是不区分大小写

人气教程排行