Click here to Skip to main content
15,892,517 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
recently i have validate date as dd/mm/yyyy format.I search from net and i have some answer as
C#
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
return false;
}
month = matchArray[1]; // p@rse date into variables
day = matchArray[3];
year = matchArray[5];
if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
return false;
}
if (day < 1 || day > 31) {
alert("Day must be between 1 and 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn`t have 31 days!")
return false;
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
alert("February " + year + " doesn`t have " + day + " days!");
return false;
}
}
return true; // date is valid
}


i have understood it but the thing i havent understood is
in line
C#
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;

i have understood the code but the code which i havent understood is that what does line /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/ ;
/^ what does it do. and what does $ do? also if i write the above code as (\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4}) in javascript will it work.
please help...
Posted

1 solution

The line you are querying is called a 'Regular Expression' and your best bet for understanding it is to do an internet search using c# regular expression as the search term.

Although regular expressions are supposed to stick to the same rules, software companies often have a different idea about what those rules are. The expression might work in JavaScript but there are no guarantees. The best test would be to try it.

Good luck. :)
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900