私は正規表現があまり得意ではありませんが、非論理的なことが起こっています:
私はこのフィドルで正規表現の構文を検証しました: http://jsfiddle.net/BcQfQ/2/そして、\d
を別の正規表現に置き換えてチェックしましたここからの url: http://daringfireball.net/2010/07/improved_regex_for_matching_urlsと動作していません: http://jsfiddle.net/bNHQs/2/。そして最も奇妙なことは、正規表現をコピーしてテキストボックスに貼り付ける (そしてコードに textbox.value を書き込む) と、すべて問題ないことです: http://jsfiddle.net/6uAQG/2/。
動作しない正規表現のコード:
var reg=/\b((?:[a-z][\w-]+:(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/;
var str="2";
if(str.match(reg))alert("test:true");
else alert("test:false");
コードに正規表現を記述して機能させるにはどうすればよいですか?