@bee.js/node
Version:
A JavaScript framework for making Node.js API´s
59 lines (50 loc) • 1.51 kB
JavaScript
module.exports = {
onlyNumbers: function (string = "") {
return string.replace(/\D/g, "");
},
onlyLetters: function (string = "") {
return string.replace(/[^a-zA-Z]+/g, "");
},
sqlEscape: function (string = "") {
return string.replace(/[\0\x08\x09\x1a\n\r"'\\]/g, function (char) {
switch (char) {
case "\0":
return "\\0";
case "\x08":
return "\\b";
case "\x09":
return "\\t";
case "\x1a":
return "\\z";
case "\n":
return "\\n";
case "\r":
return "\\r";
case '"':
case "'":
case "\\":
return "\\" + char;
default:
return char;
}
});
},
randomString: function (length = 45, characters = null) {
characters =
characters ||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
let result = "";
let charactersLength = characters.length;
for (let i = 0; i < length; i++)
result += characters.charAt(Math.floor(Math.random() * charactersLength));
return result;
},
isStrongPassword: function (password = "") {
return password.match(/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,20}$/);
},
isEmail: function (email = "") {
const re =
/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(String(email).toLowerCase());
},
};