RegExp (रेगुलर एक्सप्रेशन) का उपयोग
JavaScript में URL वैलिडेट करने के लिए रेगुलर एक्सप्रेशन (Regex) का उपयोग किया जाता है। यह पैटर्न प्रोटोकॉल, डोमेन, IP, पोर्ट, पथ, क्वेरी, और फ्रैगमेंट को वैलिडेट करता है।
उदाहरण
सरल Regex पैटर्न्स
बेसिक URL वैलिडेशन
// अधिक सख्त (RFC 3986 आधारित) var strictPattern = /^ (?:(?:https?|ftp):\/\/)? # प्रोटोकॉल (?:\S+(?::\S*)?@)? # यूजर:पास (?: (?!(?:10|127)(?:\.\d{1,3}){3}) # प्राइवेट IP ब्लॉक (?!(?:169\.254|192\.168)(?:\.\d{1,3}){2}) (?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2}) (?:[1-9]\d?|1\d\d|2[01]\d|22[0-3]) (?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2} (?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4])) | (?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+ (?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)* (?:\.(?:[a-z\u00a1-\uffff]{2,})) ) (?::\d{2,5})? # पोर्ट (?:\/\S*)? # पथ $/ix;आधुनिक तरीका: URL कंस्ट्रक्टर (ES2015+)
Regex के बजाय नेटिव
URLAPI का उपयोग करना अधिक विश्वसनीय है:HTML5 इनपुट वैलिडेशन
फॉर्म्स के लिए ब्राउज़र बिल्ट-इन वैलिडेशन उपयोग करें:
लोकप्रिय लाइब्रेरीज
- validator.js:
validator.isURL(str, options) - valid-url: सरल
require('valid-url').isUri(str)
Regex टेस्टिंग टूल्स
- regex101.com - इंटरैक्टिव टेस्टर
- regexr.com - विजुअल डीबगर