質問: text.replace(/(http(s)?:\/\/[\x21-\x7e]+)/gi, "$1"); console.log(text); // 実行結果(p閉じタグを巻き込んでしまっている) // あいうえおかきくけこhttp://google.com // こういう結果となってほしい // あいうえおかきくけこhttp://google.com ```
回答: URL(URI)で使える文字は限られているので、もう少し絞ったほうが良いでしょう。 たとえばこう ``` var text='あいうえおかきくけこhttp://google.com'; var reg=new RegExp("((https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+))"); console.log(text.replace(reg,"$1")); ``` しかし、厳密にやるなら、aタグのhrefの中の&を&に置き換えたりしないといけないので 細かい調整が必要かもしれません