簡體   English   中英

使用正則表達式刪除字符串中標簽外的文本

[英]Regular expression to remove text outside the tags in a string

這是我的繩子。 其中將包含XML字符串
像下面

 var str= "<str>rvrv</str>rvrv<q1>vrvv</q1>vrvrv<q2>rtvrvr</q2>";

如何使用正則表達式刪除標簽外的文本(不屬於任何標簽的文本)。 請幫我。

假設您的問題只是刪除未包含在元素內的文本(並且剩余代碼格式正確,因此您沒有像

var str= "<str>lorem <b>ipsum</str>";

)您可以使用這樣的正則表達式

var str= "<str>rvrv</str>rvrv<q1>vrvv</q1>vrvrv<q2>rtvrvr</q2>",
    elements = str.match(/<(.+?)>[^<]+<\/\1>/gi);

console.log(elements.join(''));

然后返回

<str>rvrv</str><q1>vrvv</q1><q2>rtvrvr</q2>

注意:要檢測結束標記,我使用了反向引用(請參閱http://www.regular-expressions.info/brackets.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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