簡體   English   中英

檢查是否在 java android 工作室的字符串中找到字符串

[英]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.

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