Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
Site: https://regex101.com/
1) validates a yyyy-mm-dd, yyyy mm dd, or yyyy/mm/dd date
1.1) Expression:
^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$
1986-01-02
1986 02 03
2019/05/01
24/08/1986
1.2) Javascript
var re = /^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$/;
var term1 = "1986-01-02";
var term2 = "1986 02 03";
var term3 = "2019/05/01";
var term4 = "24/08/1986";
if (re.exec(term1)) {
console.log("term1 Valid");
}
else {
console.log("term1 Invalid");
}
if (re.exec(term2)) {
console.log("term2 Valid");
}
else {
console.log("term2 Invalid");
}
if (re.exec(term3)) {
console.log("term3 Valid");
}
else {
console.log("term3 Invalid");
}
if (re.exec(term4)) {
console.log("term4 Valid");
}
else {
console.log("term4 Invalid");
}
2) This pattern mathces the following date formats: DDMMMYY,DDMMMYYYY,DDMMMYY. The Pattern matches on leap year dates as well
2.1) Expression:
^(d{0}|(31(?!(FEV|ABR|JUN|SET|NOV)))|((30|29)(?!FEV))|(29(?=FEV(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(29(?=FEV(((0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(0?[1-9])|1\d|2[0-8])(JAN|FEV|MAR|MAI|ABR|JUL|JUN|AGO|OUT|SET|NOV|DEZ)((1[6-9]|[2-9]\d)\d{2}|\d{2}|d{0})$
2.2) Javascript:
var re = /^(d{0}|(31(?!(FEV|ABR|JUN|SET|NOV)))|((30|29)(?!FEV))|(29(?=FEV(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(29(?=FEV(((0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)))))|(0?[1-9])|1\d|2[0-8])(JAN|FEV|MAR|MAI|ABR|JUL|JUN|AGO|OUT|SET|NOV|DEZ)((1[6-9]|[2-9]\d)\d{2}|\d{2}|d{0})$/;
var term1 = "12MAR02";
var term2 = "28FEV2007";
var term3 = "30FEV2007";
var term4 = "00ABR";
var term5 = "01ABR";
if (re.exec(term1)) {
console.log(term1+": Valid");
}
else {
console.log(term1+": Invalid");
}
if (re.exec(term2)) {
console.log(term2+": Valid");
}
else {
console.log(term2+": Invalid");
}
if (re.exec(term3)) {
console.log(term3+": Valid");
}
else {
console.log(term3+": Invalid");
}
if (re.exec(term4)) {
console.log(term4+": Valid");
}
else {
console.log(term4+": Invalid");
}
if (re.exec(term5)) {
console.log(term5+": Valid");
}
else {
console.log(term5+": Invalid");
}
3) Matches dates with the following format: MMDDYYYY
- Month - either MM (like 01) or M (like 1) - from 1 to 12
- Day - either DD (like 01) or D ( like 1) - from 1 to 31
- Year - either YYYY ( like 1998) or YY (like 98)
- Separater - either - or /
var re = /^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$/;
var term1 = "1-25-2002";
var term2 = "01/25/2002";
var term3 = "11/32/2002";
var term4 = "01.25.2002";
if (re.exec(term1)) {
console.log(term1+": Valid");
}
else {
console.log(term1+": Invalid");
}
if (re.exec(term2)) {
console.log(term2+": Valid");
}
else {
console.log(term2+": Invalid");
}
if (re.exec(term3)) {
console.log(term3+": Valid");
}
else {
console.log(term3+": Invalid");
}
if (re.exec(term4)) {
console.log(term4+": Valid");
}
else {
console.log(term4+": Invalid");
}
Add Comment
Please, Sign In to add comment