o jei ziopla teta tais laikais kai buvo skirstomi ak is sasuvinuko ir datu
primale kreivu? dublikatu ak pas sodra girdejau kad yra ......
"Laimis" wrote in message news:n7ao0p$4ia$1@trimpas.omnitel.net...
zZz rašė:
> Norėjau mėnesių / dienų intervalais. Kažkada rašiau vieną tokį gremėzdą,
> ir galvojau, gal kas panašiai ir asmens kodams rašė. Bet pažiūrėjau tavo
> variantą, ir pagalvojau, kad gal per daug noriu.
Tai intervalai pas mane (antrame variante). Mėnesių skiltyje tik
skaičiai 01-12, dienų: 01-31.
Bet datos realumą vis tiek reikia patikrinti, kaip ir neišvengiamai
apskaičiuoti kontrolinį skaičių. O tai reiškia, kad bet kokiu atveju
reikės naudotis programavimo kalba ir tada sudėtingesnius dalykus ir
tikslingiau ir paprasčiau daryti programoje, o ne regexp'e. KISS.
Juk paprasta ir aišku:
<...>
if ak_match_regexp(src) {
// named capture kintamieji arba $1 - $6
return is_valid_ak(lytis, metai, mėnuo, diena, seqno, ctlno)
}
<...>
function is_valid_ak(lytis, metai, mėnuo, diena, seqno, ctlno)
{
data = get_date(lytis, metai, mėnuo, diena)
return is_valid_date(data) and
check_ctl_sum(lytis, metai, mėnuo, diena, seqno, ctlno)
}