在Node.js中,我如何检查用户发布的域是否可行且仅包含允许的字符?
我不想检查实际域是否存在,只是在语法上是正确的。
EG。应该允许something.something.something,其中“*)() - 。net不应该。
我试图在问题How to validate domain name in PHP?上使用一些正则表达式但是,我实际上不确定如何在节点中使用这些。他们似乎总是出错。
答案 0 :(得分:0)
尝试类似
的内容var reg = new RegExp("[^a-z0-9-.]","i");
reg.test("asdasd.com")//returns false, invalid characters not found
reg.test("asd(.com")//returns true ,invalid characters found
答案 1 :(得分:0)
npm软件包validator将是最佳选择,也是一个值得信赖的项目:
var validator = require('validator');
validator.isURL('google.com', { require_valid_protocol: false }); //=> true
Package: validator
Weekly Downloads
4,309,787 (today)