【问题标题】:Java script Regex- Validate URLJavascript 正则表达式 - 验证 URL
【发布时间】:2012-03-29 19:46:36
【问题描述】:

当用户提交 URL 时,我必须验证 URL。

例如:他是否放了HTTP/HTTPS,.com,.www

我试过这个正则表达式,但是如何添加 http/https

/[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi

提前致谢!

【问题讨论】:

  • 请尝试我更新的答案并告诉我。

标签: javascript regex


【解决方案1】:
function checkValid(){ return /((http|https):\/\/(\w+:{0,1}\w*@)?(\S+)|)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(checkValid.arguments[0]); }

【讨论】:

    【解决方案2】:

    试试这个:

    (http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?
    

    【讨论】:

      【解决方案3】:

      试试这个。你可以在这里测试它。 http://regexlib.com/REDetails.aspx?regexp_id=1854

      ^(http(?:s)?\:\/\/[a-zA-Z0-9\-]+(?:\.[a-zA-Z0-9\-]+)*\.[a-zA-Z]{2,6}(?:\/?|(?:\/[\w\-]+)*)(?:\/?|\/\w+\.[a-zA-Z]{2,4}(?:\?[\w]+\=[\w\-]+)?)?(?:\&[\w]+\=[\w\-]+)*)$
      

      【讨论】:

      • [2-4]? 2012 年,在.travel.museum 之后的十一年,以及IDN 上线两年后? Srsly?
      • yoursite.travel”工作得很好。在投反对票之前,您应该自己测试一下。
      • @user1263374 - 你试过这个吗?尽管 Piskvor 有 cmets,但它对我测试的每个 URL 都有效。
      【解决方案4】:

      你可以试试这个,

        function isValidURL(url){ 
          var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/; 
          if(RegExp.test(url)){ 
              return true; 
          }else{ 
              return false; 
          } 
      } 
      

      【讨论】:

      • :我使用了第二个函数,我输入了google.com,但它显示为错误。
      • is_valid_url() 将在几个月后崩溃(甚至比现在更糟)。例如:en.wikipedia.org/wiki/…
      猜你喜欢
      • 2013-08-24
      • 2021-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-07
      • 2011-07-30
      • 1970-01-01
      相关资源
      最近更新 更多