正規表現でマッチした文字列の重複を取り払いたい
下記コードでマッチした配列の重複を消すことはできますが、
元のsのその位置から消したいです
s="abc a1 a2 a1 abc";
が
最終的に
s="abc a1 a2 abc";
となるように出力したいのですがどうしたらいいでしょうか
//一応これで配列の重複はなくなるが、それをsに当てはめる方法がわからない <script> window.onload=function(){ s="abc a1 a2 a1 abc"; if(s.match(/a[0-9]+/g)){ a=s.match(/a[0-9]+/g); aa = [...new Set(a)]; } } </script>
//よくわかっていないためいじれない <script> window.onload=function(){ s="abc a1 a2 a1 abc"; regexp = /a[0-9]+/g; s = s.replace(regexp, (m, _1, _2, _3, i) => s.indexOf(m) === i ? m.trim() : ''); } </script>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/30 02:58
2021/12/30 06:07