A. 【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);
}
}
B. java正则表达式过滤html p标签
用JavaScript方法如下,JAVA语言类似:
'你的HTML文本'.replace(/.+>(.+)<.+/,'$1')
C. 如何写一个java正则表达式,用来判断给定字符串是否匹配到<html标签
如果只是匹配<html的话,直接s.contains("<html");就可以。
D. 如何使用java的正则表达式提取html标签
你的意思是不是用Java访问一个链接,在返回的数据中提取出放在标签中的数据,例如取出<img src=""/>这些标签中的数据
E. java中怎么用正则截取html中的全部<td ... >....</td>
<td( .*?)?>.*?</td>
//看看这个吧,可能没那么完善,但应该足以应付大多数情况。
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TdMatcher {
public static void main(String[] args) {
String html = "";
html += "<table>";
html += "<tr>";
html += "<td>message</td>";
html += "<td colspan='2'>message2</td>";
html += "<td >message3</td>";
html += "</tr>";
html += "</table>";
String[] matcher = matcher(html);
for (int i = 0; i < matcher.length; i++) {
System.out.println(matcher[i]);
}
}
private static String[] matcher(String html) {
Pattern pattern = Pattern.compile("<td( .*?)?>.*?</td>");
Matcher matcher = pattern.matcher(html);
List<String> list = new ArrayList<String>();
while (matcher.find()) {
list.add(matcher.group());
}
return list.toArray(new String[0]);
}
}
F. JAVA正则表达式解析HTML字符串
public class TestString4 {
public static void main(String[] args) {
String s = "<R_Data> 0005,实验室0,0,0|0101,实验室A-测试点1,200,200|0102,实验室C-测试点2,80,400|0109,实验室C-测试点1,80,300|1020,实验室C-测试点3,80,500|1141,实验室A-测试点2,400,400|1146,实验室A-测试点3,300,300|1239,实验室B-测试点1,50,150|1240,实验室B-测试点2,80,200|1264,实验室B-测试点3,220,110| </R_Data>";
s = s.replace("<R_Data>", "").replace("</R_Data>", "").trim();
String ss[] = s.split("\|");
String[][] sss = new String[ss.length][];
for(int i=0;i<ss.length;i++){
sss[i] = ss[i].split(",");
}
}
}
sss中存放的就是你需要的数据
G. java如何去掉字符串中的 html标签
1.去除单个HTML标记
String s="asdfasd<script>asdfsfd</script>1234";
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(); //返回文本字符串
}
}
H. 求一个去除html源代码中的 无效代码( 如注释,空白字符,空白行等)的 java正则表达式~谢谢
注释的正则:<!--[\s\S]*?-->
页面样式的正则:<style[^>]*>[^<]*?</style>
HTML标签的正则:<[^>]*?>
/// <summary>
/// 正则替换
/// </summary>
/// <param name="sOld">原内容</param>
/// <param name="sRegexString">正则表达式</param>
/// <param name="sReplaceString">新字符串</param>
/// <returns></returns>
public static string ReplaceRegxString(string sOld, string sRegexString, string sReplaceString)
{
Regex reg = new Regex(@sRegexString, RegexOptions.Singleline | RegexOptions.IgnoreCase);
return reg.Replace(sOld, sReplaceString);
}