前提・実現したいこと
<p>text</p>
の値を下記のように開始タグ、中身、終了タグで分割して配列に格納したいです。
[ "<p>", "text", "</p>" ]
タグの中にタグ(下記例)のパターンにも対応したいです。
<p>text<span>inner</span></p>
なので、このような書き方で実現をしてみました。
split((/(?=\<)|(?<=\>)/g))
発生している問題・エラーメッセージ
上記の方法で無事思い通りの結果になったのですが、なぜかスマホだと、この記述があるだけでjsが実行されなくなってしまいます。
この記述をしている関数を実行していないのに、動かないです。
webpackのbableのコンパイルが悪いのかと思ったのですが、この環境を変えることは現状不可能なので、
split((/(?=\<)|(?<=\>)/g))
以外にhtmlタグを分割して配列に格納する方法はないでしょうか?
正規表現の書き方を変える、split以外の方法を使う、など、、、
補足
どの部分のせいで動かないのか検証してみると、(?<=\>)
の記述のせいであることが分かりました。
これがないとスマホでも動きます。
回答2件
あなたの回答
tips
プレビュー