从 String 中删除带有文本的 Span 标签
Remove Span tag with text from String
我有一个字符串如下:
<span class="exam-dates-title">Exam</span>Welcome
如何从 Android 中的上述字符串中完全删除 <div>
开始和 </div>
结束标记?
I need to display Welcome only
以下正则表达式将匹配一个跨度标签,包括它的属性、内容和结束标签。
<span.*>.*</span>
对您的字符串执行 find/replace(请参阅以下 https://developer.android.com/reference/java/util/regex/package-summary)并将匹配项替换为“”。
您可能需要查看 "non-greedy" 选项。
也许这会对你有所帮助:
String yourString = "<span class=\"exam-dates-title\">Exam</span>Welcome";
int index = yourString.lastIndexOf(">");
String result = yourString.substring(index + 1, yourString.length());
如果要保留 <div>
和 </div>
之间的文本,请替换前导标记的所有 <[\w\s\d\=\-"]+>
和结束标记的 </[\w\s\d\=\-"]+>
。
它将替换标签内的零个或多个 \w
个单词、\s
个空格、\d
个数字。如果需要,在 [ ]
内添加任何其他符号。
如果要删除标签<div>
</div>
和里面的文字,使用Pattern and Matcher,找到<div>
和</div>
的索引并替换它。我认为这是一种更安全的方法。如果您的字符串中有 < 或 > 但它不是标记,则使用 indexOf(">")
或 indexOf("<")
可能是错误的。
我有一个字符串如下:
<span class="exam-dates-title">Exam</span>Welcome
如何从 Android 中的上述字符串中完全删除 <div>
开始和 </div>
结束标记?
I need to display Welcome only
以下正则表达式将匹配一个跨度标签,包括它的属性、内容和结束标签。
<span.*>.*</span>
对您的字符串执行 find/replace(请参阅以下 https://developer.android.com/reference/java/util/regex/package-summary)并将匹配项替换为“”。
您可能需要查看 "non-greedy" 选项。
也许这会对你有所帮助:
String yourString = "<span class=\"exam-dates-title\">Exam</span>Welcome";
int index = yourString.lastIndexOf(">");
String result = yourString.substring(index + 1, yourString.length());
如果要保留 <div>
和 </div>
之间的文本,请替换前导标记的所有 <[\w\s\d\=\-"]+>
和结束标记的 </[\w\s\d\=\-"]+>
。
它将替换标签内的零个或多个 \w
个单词、\s
个空格、\d
个数字。如果需要,在 [ ]
内添加任何其他符号。
如果要删除标签<div>
</div>
和里面的文字,使用Pattern and Matcher,找到<div>
和</div>
的索引并替换它。我认为这是一种更安全的方法。如果您的字符串中有 < 或 > 但它不是标记,则使用 indexOf(">")
或 indexOf("<")
可能是错误的。