質問するログイン新規登録

回答編集履歴

2

sample

2021/09/30 04:52

投稿

yambejp
yambejp

スコア118169

answer CHANGED
@@ -1,2 +1,14 @@
1
1
  正規表現で属性やネストのあるタグを正確に検査することは困難です
2
- DOMで処理することをおすすめします
2
+ DOMで処理することをおすすめします
3
+
4
+ # sample
5
+ ```javascript
6
+ const html=`aaa<div data-test="<>">bbb
7
+ <span>ccc</span>
8
+ <span>ddd<span>eee</span>eee</span>fff
9
+ </div>ggg`;
10
+ let parser = new DOMParser();
11
+ let doc = parser.parseFromString(html, "text/html");
12
+ const txts=[...doc.querySelectorAll('body,body *')].map(x=>[...x.childNodes].filter(x=>x.nodeType==3).map(x=>x.nodeValue)).flat();
13
+ console.log(txts);
14
+ ```

1

調整

2021/09/30 04:52

投稿

yambejp
yambejp

スコア118169

answer CHANGED
@@ -1,2 +1,2 @@
1
- 正規表現で属性やネストのあるタグを正確に検査することはかなり無理がありま
1
+ 正規表現で属性やネストのあるタグを正確に検査することは困難で
2
2
  DOMで処理することをおすすめします