util-helpers
Version:
20 lines (16 loc) • 835 B
JavaScript
;
var ut2 = require('ut2');
var protocalReg = '[\\w-.]+:\\/\\/';
var credentialsReg = '[-;:&=\\+\\$,\\w]+@';
var serverReg = 'localhost|(([^\\s:\\/]+?\\.)+?[^\\s:\\/]+)';
var portReg = ':\\d+';
var pathReg = '\\/.*';
var searchReg = '\\?.*';
var hashReg = '#.*';
var regWithProtocal = new RegExp("^".concat(protocalReg, "(?:").concat(credentialsReg, ")?(?:").concat(serverReg, ")(?:").concat(portReg, ")?(?:").concat(pathReg, ")*(?:").concat(searchReg, ")?(?:").concat(hashReg, ")?$"));
var regNonProtocal = new RegExp("^(?:".concat(serverReg, ")(?:").concat(portReg, ")?(?:").concat(pathReg, ")*(?:").concat(searchReg, ")?(?:").concat(hashReg, ")?$"));
function isUrl(value) {
var valueStr = ut2.toString(value);
return regWithProtocal.test(valueStr) || regNonProtocal.test(valueStr);
}
module.exports = isUrl;