从富文本中截取图片_JS 获取富文本中的第一张图片 (正则表达式)
JS 获取富文本中的第一张图片 (正则表达式)
JS 获取富文本中的第一张图片 url 正则公式及去除字符串里面的 html 标签
后台发来一个富文本字符串里面可能包含了 0,1,2,3... 个图片标签(img), 我们的任务是获取这个字符串里面第一张图片的 url, 如果没有图片则返回空varimgUrlFun=function(str){
vardata='';
str.replace(/]*src=['"]([^'"]+)[^>]*>/,function(match,capture){
data=capture;
});
returndata
}
去除字符串里面的 HTML 标签的正则公式varfilterHTMLTag=function(str){
str=str.replace(/]*>/g,'');// 去除 HTML tag
str=str.replace(/[ | ]*\n/g,'\n');// 去除行尾空白
str=str.replace(/ /ig,'');// 去掉
returnstr;
}
JS 如何获取 ueditor 里面的第一张图片
想获取 ueditor 里面第一张图片作为缩略图, 怎么获取, ueditor 里面全部是以文本方式储存的
UE.getPlainTxt() 可获取到编辑器中的纯文本内容, 有段落格式
UE.getContentTxt() 可获取到编辑器中的纯文本内容, 没有段落格式;
ueditor 没有提供直接获取图片的功能, 可以 UE.getContent() 获取全部内容, 使用正则表达式 筛选出图片, 我提供一个使用 JAVA 写的筛选方法, 前台 JS 代码类似:Patternp_img=Pattern.compile("(]+src\s*=\s*'\"['\"][^>]*>)");
Matcherm_img=p_img.matcher(content);
while(m_img.find()){
Stringimg=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]
*/
functiongetPic($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 中的图片functionget_firstimg(){
//var c=document.getElementById('body').value;
varc=FCKeditorAPI.GetInstance('body').GetXHTML(true);
if(c){
varfimg=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 值.varcontent=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 地址, 成功!
来源: https://www.jb51.net/article/181053.htm
从富文本中截取图片_JS 获取富文本中的第一张图片 (正则表达式)相关推荐
- 从富文本中截取图片_js获取富文本中的第一张图片(正则表达式)
js获取富文本中的第一张图片url正则公式及去除字符串里面的html标签 后台发来一个富文本字符串里面可能包含了0.1.2.3-个图片标签(img),我们的任务是获取这个字符串里面第一张图片的url, ...
- Android开发中根据图片名称获取在drawable中的ID
在Android开发中图片资源是必不可少的,如ImageView需要图片资源的ID,ImageButton需要资源的ID等等,我们可以用R.drawable.XXX可以获取图片资源的ID,但是,在某些 ...
- Android --- 夜神模拟器中没有图片怎么办?夜神模拟器中怎么导入图片?
问题: 夜神模拟器中没有图片怎么办?夜神模拟器中怎么导入图片? 解决: 1.点击右侧文件助手 2.点击"打开电脑文件夹" 3.弹出如下文件夹 4.点击imageShare 5.点击 ...
- 手机sd卡中的图片误删?Mac数码相机中的照片丢失?
手机sd卡中的图片误删?Mac数码相机中的照片丢失?PHOTORECOVERY Professional 2019 Mac是一款专业的图片数据恢复软件,主要用于恢复数码相机以及手机sd卡中误删除的图片 ...
- 从富文本(html字符串)中获取图片,js获取富文本中的第一张图片(正则表达式)
js获取富文本中的第一张图片url正则公式及去除字符串里面的html标签 后台发来一个富文本字符串里面可能包含了0.1.2.3-个图片标签(img),我们的任务是获取这个字符串里面第一张图片的url, ...
- jwplayer 如何从视频中截取图片
有这样的一个需求: 需要从一个flv文件中,截取图片,不通过ffmpeg,而是需要用户通过web操作,就能截取. jwplayer有一个plugin,可以实现该功能 snapshot 注意:因为sna ...
- html取 输入框中的值,jquery获取input输入框中的值
如何用javascript获取input输入框中的值,js/jq通过name.id.class获取input输入框中的value 先准备一段 HTML 一.jquery获取input文本框中的值 通过 ...
- java读取word表格中的数据_JAVA获取word表格中数据的方案
上一个项目的开发中需要实现从word中读取表格数据的功能,在JAVA社区搜索了很多资料,终于找到了两个相对最佳的方案,因为也得到了不少网友们的帮助,所以不敢独自享用,在此做一个分享. 两个方案分别是: ...
- 如何在Word中自由移动图片?在 Microsoft Word 中自由移动图片的方法!
想要在Word中自由移动图片吗?在默认情况下,Microsoft Word文档中的图片是不能自由移动图片的,使用下面的方法,您可以在 Word 文档中的任意位置移动图片.如果需要,您甚至可以将图片放在 ...
最新文章
- 【Python基础】用Python制作漂亮的流动桑基图
- Java第十次作业--多线程
- 服务器维护:FTP无法连接
- php 中数组的定义赋值吗,怎么在php中定义一个数组
- HashMap死锁原因及替代方案
- 玩玩机器学习4——TensorFlow基础之激活函数
- spring.mvc.static-path-pattern、spring.resources.static-locations
- 内置模块/核心模块 (自带的)---http 服务器模块
- 创建txt文件_Mac电脑创建txt文件的方法
- FineReport新增多项目甘特图示例及操作
- 查看远端的端口是否通畅3个简单实用案例
- Unity利用GPUinstancing实现大面积草地
- 怎么把cad的图导入ps_如何将CAD图纸导入到Photoshop中编辑
- 总结:Prometheus Operator
- html2canvas苹果不显示图片,html2canvas页面截图图片不显示
- 聊聊Excel的大批量导入导出
- ByteBuffer详解(大概2333)
- 所谓的光辉岁月,并不是后来闪耀的日子,而是无人问津时你对梦想的偏执。
- 如何创建一个微信公众号(手把手、超详细)
- 力扣(145.102)补9.5
热门文章
- Magento Url重写修改
- 老李分享:接电话扩展之uiautomator 1
- 数学图形(1.47)贝塞尔(Bézier)曲线
- c# mysql 连接
- Workflow之Activity
- 编写批处理文件编译.Net工程
- 工厂供电MATLAB仿真,工厂供电虚拟仿真实验设计研究
- spring数据字典_Redis为什么默认16个数据库?
- java代码启动spring_从0开始学JAVA之《Spring框架-启动过程》
- keil5函数 默认返回值_Python列表有什么内置函数可以使用,怎么使用这些函数