簡體   English   中英

用Java處理常規String

[英]Manipulate regular String in Java

我有一個具有常規格式的String文本,並且希望使用此String的兩個部分。 字符串具有以下格式

"<html><div style=\"text-align:center;\"><b>****</b><br><i>Aula: </i><b>****</b></div></html>"

****表示我要使用的字符串部分。 我能怎么做? 我正在使用JAVA,字符串也是用HTML編寫的。

我們可以看到,字符串的有趣部分都受到<b><\\b>

如果這恰好是HTML字符串的形式,則可以使用<b></b>位置的子字符串方法(如果HTML代碼可以更改,則應使用HTML解析器)

String s = "<html><div style=\"text-align:center;\"><b>first</b><br><i>Aula: </i><b>second</b></div></html>";
int start = s.indexOf("<b>");
int end = s.indexOf("</b>");
String firstMatch = s.substring(start + "<b>".length(), end);

//now we can start looking for next `<b>` after position where we found `</b>`
start = s.indexOf("<b>", end);
//and look for </b> after position that we found latest <b>
end = s.indexOf("</b>", start);
String secondMatch = s.substring(start + "<b>".length(), end);

System.out.println(firstMatch);
System.out.println(secondMatch);

輸出:

first
second

您有幾種選擇。 最明顯但可能不是最好的是使用正則表達式。 查看String.replaceAll

更好的選擇是使用HTML解析器。 JSoup就是一個例子。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM