在面試的過程中遇到一個這樣的題目: 比如有一段HTML字元串: 其實匹配html標簽的正則表達式很短,如下: ]+ 就這樣,沒了?是的。你驚訝嗎? 這個正則表達式也是收集於網路,但是我可以看懂,首先,html標簽肯定是以符號結束(不管是不是自閉合),只是中間有點糾結,可能有字元,數字,引號,換行符— ...
在面試的過程中遇到一個這樣的題目:
比如有一段HTML字元串:
var string='<div class"test">Test a code</div><em>I am a girl.</em>'; 要求寫一個匹配HTML 標簽的正則表達式,並且替換掉所有的標簽。
html標簽有<h1></h1>這種成對的,也有<br/>這種自閉合的,更多的是<img style=”….” width=”22″ />這種混合了很多字元的。那要怎麼把他們都匹配呢?
其實匹配html標簽的正則表達式很短,如下:
<[^>]+>
就這樣,沒了?是的。你驚訝嗎?
這個正則表達式也是收集於網路,但是我可以看懂,首先,html標簽肯定是以<符號開始的,以>符號結束(不管是不是自閉合),只是中間有點糾結,可能有字元,數字,引號,換行符——但是,卻萬萬沒有>,因為有它的話html標簽就結束了,所以正則表達式中間是[^>]+,表示“除了>符號外的任何1個以上的字元”。
舉例如下:
var string='<div class"test">Test a code</div><em>I am a girl.</em>';
正則:
var reg=/<[^>]+>/gim;
string.replace(reg,"");
輸出:
Test a codeI am a girl.
文章轉自:https://www.cnblogs.com/laneyfu/p/4195767.html