重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
可以通过replaceAll方法进行字符串替换,之后替换的内容用正则表达式来匹配。举例
成都服务器托管,创新互联建站提供包括服务器租用、雅安服务器托管、带宽租用、云主机、机柜租用、主机租用托管、CDN网站加速、域名申请等业务的一体化完整服务。电话咨询:18980820575
String ss="div id='mini_nav_qq'lia target='_top' " +
"href='http:// lady.qq.com/emo/emotio.shtml'情感/a/lili" +
"a target='_top' href=''美容/a/li/div";
String ss=ss.replaceAll("(/?\\S+)\\s*?[^]*?(/?)","$1$2");//通过只保留"“后面的字符串,之后删除空格和后面的内容,快捷的实现去除操作(此方法通用于所有的标签去除,只需要传入不同的ss值)。
结果就是:divlia情感/a/lilia美容/a/li/div。
1./?font[^]* 这个只却掉font标签的, 保留除font以外的所有标签, 如imgp等等. 同样的你需要去掉其他标签, 只需要将里面的font换你要去掉的;
2./?[^/?(img)|(p)][^]* 这个保留(这里我写的保留了img, p这两个标签)你指定的标签,其他的(包括font)全去掉, 如果你还有其他的标签想保留, 直接在里面加一个 |(xxx);
3./?[a-zA-Z]+[^]* 这个表达式可以去掉所有HTML的标签;
4.JAVA代码可以这样写:
public static String delTagsFContent(String content){
String patternTag = "/?[a-zA-Z]+[^]*";
String patternBlank = "(^\\s*)|(\\s*$)";
return content.replaceAll(patternTag, "").replaceAll(patternBlank, "");
}
清除所有默认样式的css代码:
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
初始化代码(清除CSS代码):
ul,li{ padding:0;margin:0;list-style:none}
解析清除ul li样式代码:
相等于分别对ul和li设置padding:0;margin:0;list-style:none;
padding:0 —— 设置内补白(对象内间距)为0
margin:0 —— 设置对象外间距为0
list-style:none —— 去除自带无序圆点
HTML/javascript
引用外部文件中的js脚本,
script type="text/javascript" src="ext.js"/script也可以象下面这样写,language不是必要的,但是推荐上面的写法;
script language="javascript" type="text/javascript" src="ext.js"/script
页面内引用:
script type="text/javascript"//![CDATA[var x = 0;function fn(args) { //...} //]]/script加上“//![CDATA[” 和 “//]]”是为了兼容XHTML,是推荐的写法,HTML时代一般用“!--”和“//--”
在一些HTML控件的事件属性中使用(一般事件为onxxx,如onmouseover,onclick,onchange)
body onload="alert('loaded');"input type="text" name="username" onclick="alert(this.value);" /在一些HTML控件的非事件属性中使用(注意:一定要加javascript:)
a href="javascript:void(0);" onclick="alert(this.innerText);"my blog:;/a
1.去除单个HTML标记
String s="asdfasdscriptasdfsfd/script1234";
System.out.println(s.replaceAll("script.*?(?=/script)",""));
2.去除所有HTML标记
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class HTMLSpirit{ ITjob 远标教育
public static String delHTMLTag(String htmlStr){
String regEx_script="script[^]*?[\\s\\S]*?\\/script"; //定义script的正则表达式
String regEx_style="style[^]*?[\\s\\S]*?\\/style"; //定义style的正则表达式
String regEx_html="[^]+"; //定义HTML标签的正则表达式
Pattern p_script=Pattern.compile(regEx_script,Pattern.CASE_INSENSITIVE);
Matcher m_script=p_script.matcher(htmlStr);
htmlStr=m_script.replaceAll(""); //过滤script标签
Pattern p_style=Pattern.compile(regEx_style,Pattern.CASE_INSENSITIVE);
Matcher m_style=p_style.matcher(htmlStr);
htmlStr=m_style.replaceAll(""); //过滤style标签
Pattern p_html=Pattern.compile(regEx_html,Pattern.CASE_INSENSITIVE);
Matcher m_html=p_html.matcher(htmlStr);
htmlStr=m_html.replaceAll(""); //过滤html标签
return htmlStr.trim(); //返回文本字符串
}
}
针对于你提的问题,如果想去掉class和style属性必须对所需要去掉属性的标签增加id
以你提供的代码为例,首先需要增加id属性,修改后如下:
div class="content" id=“testdiv”
div id="t1"
文本1
/div
p class="bbb" id=“testp”
文本2.....font color='#00000'文本3/fontspan style="line-height:24px;"文本4/span
/p
/div
然后编写对应js代码,代码如下:
function delClass(){
$("#testdiv").removeClass("content");
$("#testp").removeClass("bbb");
}
上述代码可以去除Class
注:
如果程序为进入页面后调用则需要在body中增加onload方法也就是:onload="delClass();"
如果为点击式触发则在页面增加按钮,对按钮总方法onClick方法指定删除的js方法
希望回答对你有用。