[英]How can I check if a string contains a URL in javascript?
如果不清楚,是要檢查特定域還是僅檢查任何域。
檢查任何以http://domain.com
或www.domain.com
形式的域:
/(http:\\/\\/|www\\.)\\S+/i.test(yourString)
檢查特定的mydomain.com:
/http:\\/\\/(www\\.)?mydomain\\.com/i.test(yourString)
您可以嘗試以下javascript代碼:
if(new RegExp("[a-zA-Z0-9]+://([a-zA-Z0-9_]+:[a-zA-Z0-9_]+@)?([a-zA-Z0-9.-]+\\.[A-Za-z]{2,4})(:[0-9]+)?(/.*)?").test(myUrl)) {
// TODO
}
實際上,URL的真正完整正則表達式是:
[a-zA-Z\d]+://(\w+:\w+@)?([a-zA-Z\d.-]+\.[A-Za-z]{2,4})(:\d+)?(/.*)?
如果需要,可以測試2個站點:
希望對您有幫助。
如果您提前知道域名,則可以
if(myString.indexOf("http://mydomain.com") != -1)
{
//substring found, do stuff
}
在此處查看更多信息: http : //www.w3schools.com/jsref/jsref_IndexOf.asp
如果您不提前知道域,則正則表達式可能是您的最佳選擇
http:// [az] 。[az] 。?[az] 。?[az]
您可以在http://www.regexplanet.com/上對其進行測試。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.