// JavaScript Document function verify(data, rule){ rule=rule.split(':'); var m=''; var s=(rule[1])?'+':'*'; // restricts empty value switch (rule[0]){ case 'alpha': rule='^[А-ЯA-Z]'+s+'$'; m+='i'; break; case 'name': rule='^\\w'+s+'$'; break; case 'name_dot': rule='^[\\w.]'+s+'$'; break; case 'name_ru': rule='^[А-ЯA-Z0-9_]'+s+'$'; m+='i'; break; case 'name_spaces': rule='^[\\w\\s]'+s+'$'; break; case 'name_ru_spaces': rule='^[А-ЯA-Z0-9\\s_]'+s+'$'; m+='i'; break; case 'address': rule='([А-Я])'+s+''; m+='i'; break; case 'title': rule='^[-!@#$%^&*()_=\+№:?\.\, А-ЯA-Z0-9_\"\']'+s+'$'; m+='i'; break; case 'txt0': rule='^[-!@#$%^&*()_=\+№:\?\.\, А-ЯA-Z0-9_\"\'\r\n]'+s+'$'; m+='i'; break; case 'number': rule='^\\d'+s+'$'; break; case 'number_dot': rule='^[\\d.]'+s+'$'; break; case 'email': if(s=='*' && data=='') return true; rule='^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$'; m+='i'; break; case 'dd/mm/y': if(s=='+' && data=='') return false; rule='^(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[012])/[0-9][0-9]$'; //m+='i'; break; } var R = new RegExp(rule,m); // if (R.test(data)) return true; if (data.match(R)) return true; return false; } function trim(str){ // remove spaces return str.replace(new RegExp('^[ \t]+|[ \t]+$','g'), ''); }