[英]Android studio incompatible types required java.lang.String found java.lang.String
[英]check if string found in String in java android studio
description = "<p>[lang=\"en\"]The large ones[/lang]</p>"
if (description.startsWith("<p>")) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
description = Html.fromHtml(description, Html.FROM_HTML_MODE_COMPACT).toString();
} else {
description=Html.fromHtml(description).toString();
}
}
//這個條件不起作用字符串不會改變
if (description.matches("\\[lang=\\\"en\\\"\\]")) {
int lenght = description.length();
description.substring(7,lenght-7);
}
我需要從字符串中刪除所有 html 和 header [lang=\"en"\]
並且 output 是:
" [lang="en"]大的[/lang] "
申請后
String subString = description.substring(7,lenght-7);
只需使用替換。
subString = subString.replace("[lang=\"en\"]" , "");
subString = subString.replace("[/lang]" , "");
我會將生成的路徑分為兩個步驟 -
步驟 1:刪除所有 HTML 標簽
String description = "<p>[lang=\"en\"]The large ones[/lang]</p>"
String stringTemp = Html.fromHtml(description).toString();
無論有多少 HTML 標記存在,這都會給出[lang=\"en\"]The large ones[/lang]
。 例如。 對於所有這些描述值,結果將相同。
> <i><b><p>[lang=\"en\"]The large ones[/lang]</p></b></i>
> <HTML><b><p>[lang=\"en\"]The large ones[/lang]</p></b></HTML>
> <HTML><HEAD><b><p>[lang=\"en\"]The large ones[/lang]</p></b></HEAD></HTML>
第 2 步:獲取 [lang="en"]StringValue[/lang] 之間的 StringValue
一旦我們有了我們想要的字符串,我們就可以使用多種方式進行操作,例如使用String.subString()
或使用 @Khaled Alramam 建議的String.replace()
。
使用subString()
如下 -
/*
* String.subString(beginIndex, endIndex);
* Note: beginIndex is inclusive but endIndex is the exclusive
* */
String realString = stringTemp.substring(11,(stringTemp.length()-9));
現在realString
的結果將是The large ones
或到目前為止的任何字符串值。
快樂編碼!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.