java去掉標簽
⑴ 如何用java程序從xml文件中根據文本內容獲取指定標簽並刪除標簽和內容
XML文件的表現:以「.xml」為文件擴展名的文件;
存儲結構:樹形結構;
⑵ 用java字元串方法去除HTML代碼標簽的問題
可以通過replaceAll方法進行字元串替換,之後替換的內容用正則表達式來匹配。舉例
String ss="<div id='mini_nav_qq'><li><a target='_top' " +
"href='http:// lady.qq.com/emo/emotio.shtml'>情感</a></li><li>" +
"<a target='_top' href='http://lady.qq.com/beauty/beauty.shtml'>美容</a></li></div>";
String ss=ss.replaceAll("<(/?\S+)\s*?[^<]*?(/?)>","<$1$2>");//通過只保留"<「後面的字元串,之後刪除空格和後面的內容,快捷的實現去除操作(此方法通用於所有的標簽去除,只需要傳入不同的ss值)。
結果就是:<div><li><a>情感</a></li><li><a>美容</a></li></div>。
⑶ java 移除html標簽的屬性
針對於你提的問題,如果想去掉class和style屬性必須對所需要去掉屬性的標簽增加id
以你提供的代碼為例,首先需要增加id屬性,修改後如下:
<div class="content" id=「testdiv」>
<div id="t1">
文本1
</div>
<p class="bbb" id=「testp」>
文本2.....<font color='#00000'>文本3</font><span style="line-height:24px;">文本4</span>
</p>
</div>
然後編寫對應js代碼,代碼如下:
function delClass(){
$("#testdiv").removeClass("content");
$("#testp").removeClass("bbb");
}
上述代碼可以去除Class
註:
如果程序為進入頁面後調用則需要在body中增加onload方法也就是:onload="delClass();"
如果為點擊式觸發則在頁面增加按鈕,對按鈕總方法onClick方法指定刪除的js方法
希望回答對你有用。
⑷ java 利用jsoup 如何去除一段代碼中的所有html標簽,只留純文本
使用正則表達式去匹配<>這種字元,然後刪掉!
⑸ java中使用正則表達式將圖片標簽中的style標簽去除
Java正則表達式 (<img.*?)style=".*?" 替換成 $1
其中.*表示0個或0以上多個任意字元
.*?表示0個或0以上多個任意字元的非貪婪匹配,就是假如一個句子中有多個style,它匹配距離最近的那個style,同理後面的.*?匹配距離最近的雙引號
$1表示反向引用,它代表的是正則表達陪跡式中的第一個小括弧所括起來的分組的內容,如果有兩個小括弧括起來的內容,則分別埋凱用$1,$2表示它們(在替換後的字元串中)
完整的Java程序如下
publicclassCC{
publicstaticvoidmain(String[]args){
Strings="<imgsrc="file/img/2016/12-28/1234-25521482893088459.jpg"title="1234.jpg"alt=""width="396"height="271"style="width:396px;height:271px;"/>";
蘆液並System.out.println(s.replaceAll("(<img.*?)style=".*?"","$1"));
}
}
運行結果
<img src="file/img/2016/12-28/1234-25521482893088459.jpg" title="1234.jpg" alt="" width="396" height="271" />
⑹ 用java去除掉這段代碼的HTML標簽
public static String HtmlText(String inputString) {
String htmlStr = inputString; //含html標簽的字元串
String textStr ="";
java.util.regex.Pattern p_script;
java.util.regex.Matcher m_script;
java.util.regex.Pattern p_style;
java.util.regex.Matcher m_style;
java.util.regex.Pattern p_html;
java.util.regex.Matcher m_html;
try {
String regEx_script = "<[\\s]*?script[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?script[\\s]*?>"; //定義script的正則表達式{或<script[^>]*?>[\\s\\S]*?<\\/script> }
String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>"; //定義style的正則表達式{或<style[^>]*?>[\\s\\S]*?<\\/style> }
String regEx_html = "<[^>]+>"; //定義HTML標簽的正則表達式
p_script = Pattern.compile(regEx_script,Pattern.CASE_INSENSITIVE);
m_script = p_script.matcher(htmlStr);
htmlStr = m_script.replaceAll(""); //過濾script標簽
p_style = Pattern.compile(regEx_style,Pattern.CASE_INSENSITIVE);
m_style = p_style.matcher(htmlStr);
htmlStr = m_style.replaceAll(""); //過濾style標簽
p_html = Pattern.compile(regEx_html,Pattern.CASE_INSENSITIVE);
m_html = p_html.matcher(htmlStr);
htmlStr = m_html.replaceAll(""); //過濾html標簽
/* 空格 —— */
// p_html = Pattern.compile("\\ ", Pattern.CASE_INSENSITIVE);
m_html = p_html.matcher(htmlStr);
htmlStr = htmlStr.replaceAll(""," ");
textStr = htmlStr;
}catch(Exception e) {
}
return textStr;
}
傳你的字元串進去看看,可以的話加分,謝謝
⑺ java去除文本內容的標簽跟
這個方法是替換內容,最後trim方法是,清除字元串兩邊的空格
String newStr =str.replaceAll("<p>", "").replaceAll("</p>", "").trim();
⑻ 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標簽
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(); //返迴文本字元串
}
}
⑽ java去掉欄位中的html標簽
用正則表達式吧,應該比較簡單。
或者使用笨點的方法,循環查找'>'符號的位置,判斷下一個字元是不是'<',如果是,則繼續循環,如果不是則是需要留下的文本了,把文本用list保存起來繼續循環直到全部欄位結束。
最後list裡面就是你要留下的文本了