java正则表达式html
1. java正则表达式解析HTML字符串
1.首先提取<R_Data> 之间的内容. 我觉得不需要用 正则.
int start= str.indexOf(">",0);//返回 字符串 <R_Date> ">" 的索引 其中str 是整个字符串
int end =str.indexOf("<",start); //返回 </R_Data> 中"<" 的索引.
String s=subString(str,start,end); 这样就可以去掉 这对标签了. //s 是去掉标签之后的字符串
2. String[] sa=s.split("|"); 用 | 把这个字符串分割开. 结果返回的是一个 字符串数组.
例如 :0005,实验室0,0,0
1239,实验室B-测试点1,50,150
3.想要 这个样子的数组 String[] str={“0005","实验室0","0","0"} 可以将 上述sa 数组中的 每个元素继续分割.
如 String[] ss = sa[0].split(",",2)
思路就是这样 可能有一些细节上的问题. 遇到了问题 再 追问
2. java 正则表达式 匹配html标签段
<head>
<script language="javascript">
var G=document.getElementById;
function window_load(){
var strHTML = ""; // document.body.innerHTML;
strHTML += "<html>";
strHTML += " <head>";
strHTML += " </head>";
strHTML += " <body>";
strHTML += " <font color='red'>test1</font><br />";
strHTML += " <font size='18'>test2</font><br />";
strHTML += " <font >test3</font><br />";
strHTML += " <font></font>";
strHTML += " </body>";
strHTML += "</html>";
var reg = /<(font)\s*[^<>]*>[^<>]*<\/\1\s*>/ig;
var aryResult = strHTML.match(reg);
alert("用match方法匹配 ,结果:\n\n" + aryResult.join("\n"));
}
</script>
</head>
<body onload="window_load();"> \
<!--
<font color='red'>test1</font><br />
<font size='18'>test2</font><br />
<font >test3</font><br />
<font></font>
-->
</body>
</html>
3. Java用正则表达式获取html里的一段内容
String strLine="<a id=\"utilAllProd\" class=\"utilAllProdAct\" href=\"javascript:;\"><span class=\"utilNumbProd\">(500+)</span></a>\r\n"
+"\r\n <a id=\"utilSearsProd\" class=\"cursorPointer\" onclick=\"sellerTabsOmniture('View Sears Only Procts');\" href=\"/search=digital camera&Sears?filter=storeOrigin&keywordSearch=false&vName=Cameras+%26+Camcorders&catalogId=12605&previousSort=ORIGINAL_SORT_ORDER&viewItems=50&storeId=10153&cName=Digital+Cameras\"><span class=\"utilNumbProd\">(286)</span></a>";
Pattern pa = Pattern.compile("<span class=\"utilNumbProd\">\\((\\d+[\\+]*)\\)</span>");
Matcher ma = pa.matcher(strLine);
while (ma.find()) {
String text=ma.group(1);
System.out.println(text);
}
4. 【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);
}
}
5. java中的正则表达式与HTML正则表达式有什么区别
语法没有区别,更正下不是html是javascript
唯一的区别在于 java中\转义要使用两次
例如:只能是一个数字
java中是: "\\d"
javascript中是:/\d/
6. java正则表达式替换html中除标签外的关键字内容
\b{keywords}\b(?=[^<>]*<)
把上面{keywords}替换成你的关键字,注意把{}也替换掉,我是为了让你看明白换哪才加的{}。
然后你找到匹配上面的正则的地方后替换成你想替换的字符串就好了,全部替换记得用全局修饰符
7. java正则表达式去除html标签保留指定标签
String reg = "<\\/?html[^>]*>";
String html = "";
html.replaceAll(reg,"");
8. java正则表达式获取任意两个html标签中的内容
import java.util.regex.*;
public class RegexExample {
public static void main(String []args) {
String content=获取的网页内容;
Pattern p=Pattern.compile("<div class=\"fliter_px\">([\\s\\S]+?)<div class=\"search_page\">");
Matcher m=p.matcher(content);
if(m.find()){
System.out.println(m.group(1));
}
}
}