js获取富文本中的第一张图片url正则公式及去除字符串里面的html标签

后台发来一个富文本字符串里面可能包含了0、1、2、3…个图片标签(img),我们的任务是获取这个字符串里面第一张图片的url,如果没有图片则返回空

var imgUrlFun = function(str){

var data = '';

str.replace(/]*src=['"]([^'"]+)[^>]*>/, function (match, capture) {

data = capture;

});

return data

}

去除字符串里面的html标签的正则公式

var filterHTMLTag = function (str) {

str = str.replace(/]*>/g,''); //去除HTML tag

str = str.replace(/[ | ]*\n/g,'\n'); //去除行尾空白

str=str.replace(/ /ig,'');//去掉

return str;

}

js如何获取ueditor里面的第一张图片

想获取ueditor里面第一张图片作为缩略图,怎么获取,ueditor里面全部是以文本方式储存的

UE.getPlainTxt() 可获取到编辑器中的纯文本内容,有段落格式

UE.getContentTxt() 可获取到编辑器中的纯文本内容,没有段落格式;

ueditor 没有提供直接获取图片的功能,可以UE.getContent() 获取全部内容,使用正则表达式 筛选出图片,我提供一个使用JAVA写的筛选方法,前台js代码类似:

Pattern p_img = Pattern.compile("(]+src\s*=\s*'\"['\"][^>]*>)");

Matcher m_img = p_img.matcher(content);

while (m_img.find()) {

String img = m_img.group(1); //m_img.group(1) 为获得整个img标签 m_img.group(2) 为获得src的值

}

可以打开ueditor.all.min.js 查看,里面有所有支持的方法 注释也都很明白

ueditor发布文章获取第一张图片为缩略图实现方法

正则匹配图片地址获取第一张图片地址

此为函数 在模块或是全局Common文件夹中的function.php中

/**

* [getPic description]

* 获取文本中首张图片地址

* @param [type] $content [description]

* @return [type] [description]

*/

function getPic($content){

if(preg_match_all("/(src)=([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png))\\2/i", $content, $matches)) {

$str=$matches[3][0];

if (preg_match('/\/Uploads\/images/', $str)) {

return $str1=substr($str,7);

}

}

}

用法演示

$content=I('post.body');//获取富文本编辑器内容

$info=getPic($content);//使用函数 返回匹配地址 如果不为空则声称缩略图

if(!$info==null){

$thumb=$info.'thumb240x160.png';

$image = new \Think\Image();//实例化图像处理,缩略图功能

$image->open($info);// 生成一个居中裁剪为240*160的缩略图

$unlink=$image->thumb(240, 160,\Think\Image::IMAGE_THUMB_CENTER)->save($thumb);

}else{

$thumb='';

}

dedecms中的js获取fckeditor中的图片

function get_firstimg(){

//var c=document.getElementById('body').value;

var c=FCKeditorAPI.GetInstance('body').GetXHTML(true);

if(c){

var fimg=c.match(//);

if(fimg[2]){

document.getElementById('picname').value=fimg[2];

if(document.getElementById('ImgPr'))document.getElementById('ImgPr').src=fimg[2];//预览

if(document.getElementById('picview'))document.getElementById('picview').src=fimg[2];//预览

}

}

}

再补充一个完整的

js获取UEditor文本编辑器中的图片地址

写之前在网上找了很多方法,最简单的思路应该是1.获取UEditor中的内容;2.将获取到的字符串转换成jquery对象;3.选择器找到img元素,获取src值。

var content= UE.getEditor('details').getContent();//获取编辑器内容

var $div = document.createElement("div");//创建一个div元素对象

$div.innerHTML = content;//往div里填充html

var $v = $($div);//从dom对象转换成jquery对象

$.each($v.find("img"),function (v,i) {//选择器找到img元素,循环获取src值

console.log("src======"+i.src);

});

打印结果:

写出上面代码之前碰了几次壁,绕了几个弯,下面就是我整个开发过程,记录下。

1.获取UEditor中的内容

这一步很简单,使用编辑器提供的getContent()函数

2.将获取到的字符串转换成jquery对象

夏季到了,持续高温就连大人都受不了,更别说孩子了。所以该不该给孩子穿袜子又成了宝妈心头的大事,一方面觉得应该给孩子穿,毕竟这个几个理由是拒绝不了的。

还有一部分宝妈意见不同,认为还是不穿袜子比较好:

1.小孩子经常出汗,新陈代谢比较快,袜子如果不透气的话,有可能会因为生脚汗导致孩子哭闹不休。

2.脚底的穴位多,不穿袜子可以充分按摩到脚底。有利于身体其他机能的运转。缓解便秘,消化不良等症状。

好像两方家长说的都有道理,那么到底应该穿袜子吗?

var content= UE.getEditor(‘details').getContent();

上面是我编辑器里的内容(content),最简单的方法是用

$(content)来转换成jquery对象,但是$(content).html()的打印结果如下:

可以看出来转换出的Jquery对象代表的是content中第一个html元素p,剩下的html元素获取不到,也就无法进行第三步获取图片地址。

这里可以补充的是,网上提供的一种方法

$(content).get(0).outerHTML的打印结果如下:

get(1)、get(2)…依次可以打印出接下来的html元素代码,我开始考虑循环获取,但是循环次数的获取回到了原地,根本取不到,有兴趣的可以尝试。

既然jquery的思路断了,我就开始考虑原生js的方法,在网上找了个:

var $div = document.createElement("div");//创建一个div元素对象

$div.innerHTML = content;//往div里填充html

打印出来的结果非常好:

前面绕的弯两行代码就解决了,原生js真棒!

但是我还是习惯用jquery,又把它转换成jquery了,方便下面的选择器和循环

var $v = $($div);//从dom对象转换成jquery对象

3.选择器找到img元素,获取src值

$.each($v.find("img"),function (v,i) {

console.log("src======"+i.src);

});

i.src可以直接获取图片url地址,成功!

到此这篇关于js获取富文本中的第一张图片(正则表达式)的文章就介绍到这了,更多相关js获取网页编辑器中的图片内容请搜素以前的文章或下面相关文章,希望大家以后多多支持!

从富文本中截取图片_js获取富文本中的第一张图片(正则表达式)相关推荐

  1. 从富文本中截取图片_JS 获取富文本中的第一张图片 (正则表达式)

    JS 获取富文本中的第一张图片 (正则表达式) JS 获取富文本中的第一张图片 url 正则公式及去除字符串里面的 html 标签 后台发来一个富文本字符串里面可能包含了 0,1,2,3... 个图片 ...

  2. Android开发中根据图片名称获取在drawable中的ID

    在Android开发中图片资源是必不可少的,如ImageView需要图片资源的ID,ImageButton需要资源的ID等等,我们可以用R.drawable.XXX可以获取图片资源的ID,但是,在某些 ...

  3. Android --- 夜神模拟器中没有图片怎么办?夜神模拟器中怎么导入图片?

    问题: 夜神模拟器中没有图片怎么办?夜神模拟器中怎么导入图片? 解决: 1.点击右侧文件助手 2.点击"打开电脑文件夹" 3.弹出如下文件夹 4.点击imageShare 5.点击 ...

  4. 手机sd卡中的图片误删?Mac数码相机中的照片丢失?

    手机sd卡中的图片误删?Mac数码相机中的照片丢失?PHOTORECOVERY Professional 2019 Mac是一款专业的图片数据恢复软件,主要用于恢复数码相机以及手机sd卡中误删除的图片 ...

  5. 从富文本(html字符串)中获取图片,js获取富文本中的第一张图片(正则表达式)

    js获取富文本中的第一张图片url正则公式及去除字符串里面的html标签 后台发来一个富文本字符串里面可能包含了0.1.2.3-个图片标签(img),我们的任务是获取这个字符串里面第一张图片的url, ...

  6. jwplayer 如何从视频中截取图片

    有这样的一个需求: 需要从一个flv文件中,截取图片,不通过ffmpeg,而是需要用户通过web操作,就能截取. jwplayer有一个plugin,可以实现该功能 snapshot 注意:因为sna ...

  7. html取 输入框中的值,jquery获取input输入框中的值

    如何用javascript获取input输入框中的值,js/jq通过name.id.class获取input输入框中的value 先准备一段 HTML 一.jquery获取input文本框中的值 通过 ...

  8. java读取word表格中的数据_JAVA获取word表格中数据的方案

    上一个项目的开发中需要实现从word中读取表格数据的功能,在JAVA社区搜索了很多资料,终于找到了两个相对最佳的方案,因为也得到了不少网友们的帮助,所以不敢独自享用,在此做一个分享. 两个方案分别是: ...

  9. 如何在Word中自由移动图片?在 Microsoft Word 中自由移动图片的方法!

    想要在Word中自由移动图片吗?在默认情况下,Microsoft Word文档中的图片是不能自由移动图片的,使用下面的方法,您可以在 Word 文档中的任意位置移动图片.如果需要,您甚至可以将图片放在 ...

最新文章

  1. 在Uubuntu 14.04 64bit上搭建NumPy函数库环境
  2. 数据库设计三大范式和ER模型
  3. MySQL学习总结(三)索引
  4. web app开发技巧总结
  5. VMware虚拟机中调用本机摄像头详解
  6. 【python数据挖掘课程】十九.鸢尾花数据集可视化、线性回归、决策树花样分析
  7. JavaScript实现的水珠动画效果
  8. 程序员自学路上的一些感悟
  9. 总之就是不太可爱(思维严谨性的考验)
  10. 基于PHP的校园bbs论坛系统
  11. sensor接口之DVP
  12. Video.js 使用教程 - 手把手教你基于 Vue 搭建 HTML 5 视频播放器
  13. 随机森林 OOB理解
  14. 一个简单的库存控制模型
  15. 【USACO10HOL】 Cow Politics
  16. Java面试题——Spring
  17. 智能化安防视频监控行业发展是如何转变的?
  18. 直播中常用的美颜sdk动态贴纸功能是什么?技术怎么实现的?
  19. 提升大模型研究应用技能:第2期前沿讲习班报名,顶尖专家面授,多角度系统培训...
  20. LBP算法的一些讲解

热门文章

  1. 2022年云南二级建造师建设工程基本法律知识每日练习及答案
  2. c# .accdb格式access数据库压缩
  3. ESP8266安装Wifi杀手(含固件)
  4. Pandas详解三之Index对象
  5. Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day40】—— 数据库7
  6. H.266/VVC帧内预测总结
  7. 电脑如何格式化重装系统
  8. POJO,PO,VO,DTO
  9. oppo reno2 z可以升级鸿蒙吗,免费手机铃声下载,OPPO 正式公布 OPPO Reno2 Z:联发科 P90 处理器...
  10. 前端建站时利用HDHCMS模板导入的建站方法