正如本站实用的文本编辑器一样,某程序后台也使用了UEditor,对UEditor进行了改造,目的是只保留UEditor的图片和附件上传功能。
由于涉及到Word导出功能,在进行Word导出的时候,会把附件的名称导出到Word中,但只是附件名字,需要去掉。
方法就是把文本中所有A标签去掉即可,因为所谓的附件,在UEditor中其实就是把文件上传后,生成了一个超链接。这里实用正则,把文本中的A标签替换为空。
代码如下:
str.replaceAll("<a href=\"(.*?)\".*?>(.*?)</a>", "")A标签的匹配,忽略A标签中的其他属性。
测试代码:
public class T {
	public static void main(String[] args) {
		String str = "<p>1111111111111111</p><p><img src=\"http://localhost:8080/mybug/static/ueditor/jsp/upload/20151019/1445263285900.png\" title=\"bd_logo1.png\"/></p><p style=\"line-height: 16px;\"><img src=\"http://localhost:8080/mybug/static/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif\"/><a href=\"http://localhost:8080/mybug/static/ueditor/jsp/upload/20151019/1445263309738.txt\">db.txt</a></p><p><br/></p>";
		System.out.println(str.replaceAll("<a href=\"(.*?)\".*?>(.*?)</a>", ""));
	}
}运行后:
<p>1111111111111111</p><p><img src="http://localhost:8080/mybug/static/ueditor/jsp/upload/20151019/1445263285900.png" title="bd_logo1.png"/></p><p style="line-height: 16px;"><img src="http://localhost:8080/mybug/static/ueditor/dialogs/attachment/fileTypeImages/icon_txt.gif"/></p><p><br/></p>
结束。
 
		
	Java小强
	未曾清贫难成人,不经打击老天真。
自古英雄出炼狱,从来富贵入凡尘。	
发表评论: