gpt4 book ai didi

java - 在android中的html字符串中添加一个新的html标签

转载 作者:行者123 更新时间:2023-12-01 22:37:53 24 4
gpt4 key购买 nike

我有一个从 EditText 获得的字符串。该字符串包含 html 标签。

Spannable s  = mainEditText.getText();
String webText = Html.toHtml(s);

字符串的内容是:

<p dir="ltr">test</p> 
<p dir="ltr"><img src="http://files.parsetfss.com/bcff7108-cbce-4ab8-b5d1-1f82827e6519/tfss-0de7a730-3fa9-4a1e-9f82-d34e4f6e2d31-file" /><br /></p>
<p dir="ltr"><a href="22.572646,88.363895"><img src="http://maps.google.com/maps/api/staticmap?center=22.572646,88.363895&zoom=15&size=960x540&sensor=false&markers=color:blue%7Clabel:!%7C22.572646,88.363895" /></a><br /> </p>

现在,我想做的是,只要有 img src 标签,我就想在它前面加上一个中心标签。

我应该怎样做才能得到以下输出?

<p dir="ltr">test</p> 
<p dir="ltr"><center><img src="http://files.parsetfss.com/bcff7108-cbce-4ab8-b5d1-1f82827e6519/tfss-0de7a730-3fa9-4a1e-9f82-d34e4f6e2d31-file" /></center><br /></p>
<p dir="ltr"><a href="22.572646,88.363895"><center><img src="http://maps.google.com/maps/api/staticmap?center=22.572646,88.363895&zoom=15&size=960x540&sensor=false&markers=color:blue%7Clabel:!%7C22.572646,88.363895" /></center></a><br /> </p>

正则表达式可以解决问题还是应该以不同的方式完成?

JSOUP 可以提供任何帮助吗?有没有其他类型的 HTML 解析器可以完成这项工作?

最佳答案

(<img\s+[^>]*>)

你可以试试这个。替换为 <center>$1</centre> .参见演示。

http://regex101.com/r/sU3fA2/38

类似

var re = /(<img\s+[^>]*>)/g;
var str = '<p dir="ltr">test</p> \n<p dir="ltr"><img src="http://files.parsetfss.com/bcff7108-cbce-4ab8-b5d1-1f82827e6519/tfss-0de7a730-3fa9-4a1e-9f82-d34e4f6e2d31-file" /><br /></p> \n<p dir="ltr"><a href="22.572646,88.363895"><img src="http://maps.google.com/maps/api/staticmap?center=22.572646,88.363895&zoom=15&size=960x540&sensor=false&markers=color:blue%7Clabel:!%7C22.572646,88.363895" /></a><br /> </p>';
var subst = '<center>$1</centre>';

var result = str.replace(re, subst);

关于java - 在android中的html字符串中添加一个新的html标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26624627/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com