文字列のうち、「クォーテーションで囲われていないURI」に対して置換を行いたいです。
元の文字列が、
http://foo.bar/baz.html<br>"http://hoge.piyo/fuga.php"<br>'http://ex.ample/'
の場合、
<a href="http://foo.bar/baz.html">http://foo.bar/baz.html</a><br>"http://hoge.piyo/fuga.php"<br>'http://ex.ample/'
という形を目指しています。(<br>は改行を示しているわけではなく、"<br>"という文字列で渡されます。最終的にinnerHTMLになります)
元の文字列は改行を含みません(かならず1行で渡されます)。また、URIが出現する回数は不定です。
使用言語はVanilla JSです。
適切な正規表現パターンをご教示頂きたく思います。
lang
1function foo(txt){ 2 var chk = /h?ttps?:\/\//gi; 3 if(!chk.test(txt)) return txt; 4 5 var ptn = ''; // <- ??? 6 return txt.replace(ptn, '<a href="$&">$&</a>'); 7}
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/03/04 10:29