正则获取[img][/img] <img src=""> 标签图片

function imgpic($content) {
$pattern="/<img[\s\S]*?src\s*=\s*[\"|\'](.*?)[\"|\'][\s\S]*?>/";
preg_match_all($pattern,$content,$match);

<img src="/7.jpg" />
[img]/8.jpg[/img]
<img src="/9.jpg" />

这是目前所用的正则,只能取html的(也就是7和9.jpg

求大佬修改成也支持取ubb的(7.8.9.都能取到)

阅读 3.4k
2 个回答
const r1 = /(<img[\s\S]*?src\s*=\s*[\"|\']|\[img\])(.*?)([\"|\'][\s\S]*?>|\[\/img\])/;

思路: 把字符串拆解成前中后三部分

clipboard.png

新手上路,请多包涵

function imgpic($content) {
$pattern="/<img[sS]?srcs=s"|'"|'?>/";
preg_match_all($pattern,$content,$match);

<img src="/7.jpg" />
[img]/8.jpg[/img]
<img src="/9.jpg" />

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题