如何replacejs中的特定string
我有一个variables与以下数据
间皮瘤发病高峰预计将在2014年至2021年间在澳大利亚,2011年至2015年在英国,2015年至2024年在意大利,2010年在美国,2015年在丹麦,2017年在荷兰,并在2027年在日本。
在这里我想replace
<img src="test" />
至
<amp-img src="test"></amp-img>
但是在这里,我以100个logging的数据为例,
<img src="test" />
但我不知道我的img标签包含了什么。所以我van用imgreplace
replace('<img',<amp-img>);
但是,我怎样才能取代结束标签即
('/>','></amp-img>').
任何人都可以请build议我help.Thanks。
关于这个…
…
<img src="test" />
但我不知道我的img标签包含了什么。所以我van用imgreplace
replace('<img',<amp-img>);
…
JavaScriptstringreplace方法有两个参数,第一个是正则expression式或一个确切的string,第二个是replacestring或函数。 如果您只需要进行一个特定的更改,那么使用string作为参数是可行的,多个“replace者”可以链接到更复杂的操作。
所以这…
var sampleString = '<img src="test" />';
..可以'replace'像这样…
var newString = sampleString.replace('<img','<amp-img') .replace(' />','</amp-img>');
newString
variables现在包含您对sampleString
variables的内容所做的更改。
希望帮助:)
这将取代你想要的最后一个结束标签:
sampleString.replace(sampleString.slice(sampleString.lastIndexOf(' />')), '></amp-img>');
如果你有一个string,字面上包含: <img src="test" />
然后你可以使用:
string = string.replace(/<img\s+(.*?)\s*\/>/g, '<amp-img $1></amp-img>');
甚至:
string = string.replace(/<img\s+([^>]*?)\s*\/>/g, '<amp-img $1></amp-img>');
不要单独更换结束标签,如下所示:
string.replace(' />','</amp-img>')
因为这将打破所有其他标记,你有其他标记,你不想取代(在这种情况下,它也将无法正常工作,如果你没有空间之前的斜杠 – 这是完全有效的,应该是可以的)。
如果你有一个DOM对象,那么你应该单独replaceDOM节点,而不是将标记parsing为string。