导航:首页 > 净水问答 > java正则过滤html中的

java正则过滤html中的

发布时间:2023-01-24 10:15:58

❶ java正则表达式替换html中除标签外的关键字内容

\b{keywords}\b(?=[^<>]*<)
把上面{keywords}替换成你的关键字,注意把{}也替换掉,我是为了让你看明白换哪才加的{}。
然后你找到匹配上面的正则的地方后替换成你想替换的字符串就好了,全部替换记得用全局修饰符

❷ java html的正则表达式过滤

|// 以下代码直接放到任意的javascript中,即可得到结果.

var string = "<td class=\"www\"><a href=\"10078049.html\">第十五章 瘦的也杀!</a></td>" +
"<td class=\"www\"><a href=\"10078050.html\">第十六章 暴力杀伐</a></td></tr>";

string = string.replace(/<(\/\s*)?((\w+:)?\w+)(\w+(\s*=\s*((["'])(\\["'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>/ig,"");
alert(string);

❸ 正则表达式如何过滤HTML标签中的属性值

去掉html标签: str.replace(/</?[a-zA-Z]+[^><]*>/g,"")
去掉标签里面的属性: str.replace(/<([a-zA-Z]+)\s*[^><]*>/g,"<$1>")
我亲自测试通过,操作语言专javascript 楼主还有问题的属话Hi 我

❹ java中怎么用正则截取html中的全部

// 这是你的HTML内容x0dx0a String str = "abcdef";x0dx0a // 这是正则表达式x0dx0a String p = "(]*>[^<]*)";x0dx0a Pattern pt = Pattern.compile(p);x0dx0a Matcher m = pt.matcher(str);x0dx0a while (m.find())x0dx0a {x0dx0a // 输出匹配的内容x0dx0a System.out.println(m.group(1));x0dx0a }

❺ java正则表达式去除html标签保留指定标签

String reg = "<\\/?html[^>]*>";
String html = "";
html.replaceAll(reg,"");

❻ JSP中怎么用正则表达式过滤HTML标签

<xmp><font color='red'>hello</font></xmp>
加xmp标签就行了

❼ java正则表达式过滤html p标签

用JavaScript方法如下,JAVA语言类似:
'你的HTML文本'.replace(/.+>(.+)<.+/,'$1')

❽ 用正则表达式过滤HTML标签

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
* <p>
* Title: HTML相关的正则表达式工具类
* </p>
* <p>
* Description: 包括过滤HTML标记,转换HTML标记,替换特定HTML标记
* </p>
* <p>
* Copyright: Copyright (c) 2006
* </p>
*
* @ hejian
* @version 1.0
* @createtime 2006-10-16
*/

public class HtmlRegexpUtil {
private final static String regxpForHtml = "<([^>]*)>"; // 过滤所有以<开头以>结尾的标签

private final static String regxpForImgTag = "<\\s*img\\s+([^>]*)\\s*>"; // 找出IMG标签

private final static String regxpForImaTagSrcAttrib = "src=\"([^\"]+)\""; // 找出IMG标签的SRC属性

/**
*
*/
public HtmlRegexpUtil() {
// TODO Auto-generated constructor stub
}

/**
*
* 基本功能:替换标记以正常显示
* <p>
*
* @param input
* @return String
*/
public String replaceTag(String input) {
if (!hasSpecialChars(input)) {
return input;
}
StringBuffer filtered = new StringBuffer(input.length());
char c;
for (int i = 0; i <= input.length() - 1; i++) {
c = input.charAt(i);
switch (c) {
case '<':
filtered.append("<");
break;
case '>':
filtered.append(">");
break;
case '"':
filtered.append(""");
break;
case '&':
filtered.append("&");
break;
default:
filtered.append(c);
}

}
return (filtered.toString());
}

/**
*
* 基本功能:判断标记是否存在
* <p>
*
* @param input
* @return boolean
*/
public boolean hasSpecialChars(String input) {
boolean flag = false;
if ((input != null) && (input.length() > 0)) {
char c;
for (int i = 0; i <= input.length() - 1; i++) {
c = input.charAt(i);
switch (c) {
case '>':
flag = true;
break;
case '<':
flag = true;
break;
case '"':
flag = true;
break;
case '&':
flag = true;
break;
}
}
}
return flag;
}

/**
*
* 基本功能:过滤所有以"<"开头以">"结尾的标签
* <p>
*
* @param str
* @return String
*/
public static String filterHtml(String str) {
Pattern pattern = Pattern.compile(regxpForHtml);
Matcher matcher = pattern.matcher(str);
StringBuffer sb = new StringBuffer();
boolean result1 = matcher.find();
while (result1) {
matcher.appendReplacement(sb, "");
result1 = matcher.find();
}
matcher.appendTail(sb);
return sb.toString();
}

/**
*
* 基本功能:过滤指定标签
* <p>
*
* @param str
* @param tag
* 指定标签
* @return String
*/
public static String fiterHtmlTag(String str, String tag) {
String regxp = "<\\s*" + tag + "\\s+([^>]*)\\s*>";
Pattern pattern = Pattern.compile(regxp);
Matcher matcher = pattern.matcher(str);
StringBuffer sb = new StringBuffer();
boolean result1 = matcher.find();
while (result1) {
matcher.appendReplacement(sb, "");
result1 = matcher.find();
}
matcher.appendTail(sb);
return sb.toString();
}

/**
*
* 基本功能:替换指定的标签
* <p>
*
* @param str
* @param beforeTag
* 要替换的标签
* @param tagAttrib
* 要替换的标签属性值
* @param startTag
* 新标签开始标记
* @param endTag
* 新标签结束标记
* @return String
* @如:替换img标签的src属性值为[img]属性值[/img]
*/
public static String replaceHtmlTag(String str, String beforeTag,
String tagAttrib, String startTag, String endTag) {
String regxpForTag = "<\\s*" + beforeTag + "\\s+([^>]*)\\s*>";
String regxpForTagAttrib = tagAttrib + "=\"([^\"]+)\"";
Pattern patternForTag = Pattern.compile(regxpForTag);
Pattern patternForAttrib = Pattern.compile(regxpForTagAttrib);
Matcher matcherForTag = patternForTag.matcher(str);
StringBuffer sb = new StringBuffer();
boolean result = matcherForTag.find();
while (result) {
StringBuffer sbreplace = new StringBuffer();
Matcher matcherForAttrib = patternForAttrib.matcher(matcherForTag
.group(1));
if (matcherForAttrib.find()) {
matcherForAttrib.appendReplacement(sbreplace, startTag
+ matcherForAttrib.group(1) + endTag);
}
matcherForTag.appendReplacement(sb, sbreplace.toString());
result = matcherForTag.find();
}
matcherForTag.appendTail(sb);
return sb.toString();
}
}

❾ 【Java作业向】正则表达式过滤HTML标签

过滤HTML标签的Java正则表达式 (?s)<.*?/?.*?>

按照你的要求编写的用正则表达式过滤HTML标签的Java程序回如下

public class AA {

public String tagFilter(String s){

String regex = "(?s)<.*?/?.*?>";

String ss=s.replaceAll(regex,"");

return ss;

}

public static void main(String[] args) {

String s="<div class="guid time online">测试答 abc</div><span data-url="games/details/" class="guid done">你好13548</span><a href="games/details/" class="guid">15个字母Abc</a><i class="icon-guid"/>";

String result=new AA().tagFilter(s);

System.out.println(result);

}

}

❿ java爬取知乎答案的时候,如何去除其中的HTML标签

可以通过正则表达式去除html标签

importjava.util.regex.Matcher;
importjava.util.regex.Pattern;

publicclassHtmlUtil{
privatestaticfinalStringregEx_script="<script[^>]*?>[\s\S]*?<\/script>";//定义script的正则表达式
privatestaticfinalStringregEx_style="<style[^>]*?>[\s\S]*?<\/style>";//定义style的正则表达式
privatestaticfinalStringregEx_html="<[^>]+>";//定义HTML标签的正则表达式
privatestaticfinalStringregEx_space="\s*| | | ";//定义空格回车换行符

/**
*@paramhtmlStr
*@return
*删除Html标签
*/
publicstaticStringdelHTMLTag(StringhtmlStr){
Patternp_script=Pattern.compile(regEx_script,Pattern.CASE_INSENSITIVE);
Matcherm_script=p_script.matcher(htmlStr);
htmlStr=m_script.replaceAll("");//过滤script标签

Patternp_style=Pattern.compile(regEx_style,Pattern.CASE_INSENSITIVE);
Matcherm_style=p_style.matcher(htmlStr);
htmlStr=m_style.replaceAll("");//过滤style标签

Patternp_html=Pattern.compile(regEx_html,Pattern.CASE_INSENSITIVE);
Matcherm_html=p_html.matcher(htmlStr);
htmlStr=m_html.replaceAll("");//过滤html标签

Patternp_space=Pattern.compile(regEx_space,Pattern.CASE_INSENSITIVE);
Matcherm_space=p_space.matcher(htmlStr);
htmlStr=m_space.replaceAll("");//过滤空格回车标签
returnhtmlStr.trim();//返回文本字符串
}

(StringhtmlStr){
htmlStr=delHTMLTag(htmlStr);
htmlStr=htmlStr.replaceAll("","");
htmlStr=htmlStr.substring(0,htmlStr.indexOf("。")+1);
returnhtmlStr;
}

publicstaticvoidmain(String[]args){
Stringstr="<divstyle='text-align:center;'>整治“四风”清弊除垢<br/><spanstyle='font-size:14px;'></span><spanstyle='font-size:18px;'>公司召开党的群众路线教育实践活动动员大会</span><br/></div>";
System.out.println(getTextFromHtml(str));
}
}
阅读全文

与java正则过滤html中的相关的资料

热点内容
废水乙二醇可生化性 浏览:104
沸石会和蒸馏原料发生反应吗 浏览:127
江西净水系统多少钱 浏览:653
为什么要洗超滤装置 浏览:170
反渗透教育班会记录 浏览:124
环氧树脂灌胶去除 浏览:817
反渗透式净水机产生的废水 浏览:125
发电厂的脱硫废水 浏览:306
空调过滤网坏了咋办 浏览:386
焦化废水与生活污水的区别 浏览:840
别人用粤语说谢谢怎么回 浏览:970
荏源污水提升泵 浏览:303
如何清洗轿车上的白色水垢 浏览:399
宁河区污水处理厂地址 浏览:314
夏利n5的空调滤芯在哪里更换 浏览:999
污水现场监测调查包括什么 浏览:17
牛废水能浇茶树吗 浏览:141
烤贴面和树脂贴面 浏览:186
实验室制取蒸馏水的目的是什么 浏览:214
污水处理有哪些基本办法 浏览:476