Programování

Všechno okolo zdrojových kódů a skriptů.

Neděle, 27. leden 2008

Regulární výraz - MySQL TIMESTAMP

Tímhle článkem bych rád započal svou občasnou knihovnu regulárních výrazů, i když vím že podobné projekty se už nějaký ten pátek po internetu válejí.

Na úvod jsem si šetřil časovou známku. Výraz propustí téměř všechny platné formáty, kterými lze v MySQL nastavovat sloupec TIMESTAMP. Kromě formátu kontroluje také platost data a času, a věřte nebo ne, poradí si i s přestupnými roky. Možná proto je tak nevkusně dlouhý. Zadané datum a čas mohou být v rozmezí 1970-01-01 00:00:00 až 2037-12-31 23:59:59. Výraz pečlivě zkontrolován cyklem v celém rozsahu :-)

Regexp

/^((((19)?[7-9][0-9]|(20)?([0-2][0-9]|3[0-7]))[[:punct:]]+(0?2[[:punct:]]+(0?[1-9]|1[0-9]|2[0-8])|
(0?[469]|11)[[:punct:]]+(0?[1-9]|[12][0-9]|30)|(0?[13578]|10|12)[[:punct:]]+(0?[1-9]|[12][0-9]|3[01])))|
((19)?(8[048]|[79][26])|(20)?([02][048]|[13][26]))[[:punct:]]+0?2[[:punct:]]+29)([[:punct:]\s]+([01]?[0-9]|2[0-3])
([[:punct:]]+([0-5]?[0-9])([[:punct:]]+([0-5]?[0-9]))?)?)?$/

Souhlasí

1970-01-21
2037-3#24  16&39
08-3-24 16:39:42
2008?03+24@!_16%39?42

Nesouhlasí

200803-24-16-39-42
20080324163942


Neděle, 19. srpen 2007

Překlad odkazů v prohlížečích

Která spojení lze v obci internetové prohlásit za profláknutější, než hypertextové odkazy, linky, URL, URI. Říkejme jim jak chceme. Odkazy jsou zkrátka veskrze běžná věc, přesto v ní ale prohlížeče nejsou tak docela zajedno. Třeba prachobyčejný prázdný odkaz. Jak ho browser pochopí? Co myslíte, skočí na index adresáře nebo zůstane na aktuálním dokumentu? A co ?řetězec_dotazu a #fragment, zůstanou či zmizí?

A tak vznikla tabulka, která experimentálně naznačuje pravidla, jimiž se takový převod řídí. Jak se můžeme přesvědčit, třeba právě takový prázdný odkaz je chápán naprosto odlišně.


Úterý, 20. únor 2007

PHP operátory: == vs. ===

V delších cyklech (např. zpracování řetězců bajt po bajtu) se vyplatí používat místo operátorů == a != raději === a !==. Možná vás jejich rychlost příjemně překvapí.


Středa, 15. listopad 2006

AsmStats – When Even Toes are Not Enough

I have developed quite useful form-based tool AsmStats for the Assembler code analysis. The only instruction sets available in this moment are Intel 8051 and Atmel AVR.


Neděle, 28. květen 2006

Odeslání formuláře enterem

Pokud v IE6 odešleme pomocí enteru formulář obsahující pojmenované submit tlačítko, pak, narozdíl od Firefoxu, není toto tlačítko zahrnuto do odeslaných dat.


Neděle, 14. květen 2006

JavaScript – kouzelné a rezervované slůvko class

IE hlásí Byl očekáván objekt. Čísle řádku se nedá věřit, chyba může být kdekoli. Firefoxová JavaScript Console nenaÅ¡la žádnou chybu. Úžasná hra „Hádej, kterýpak objekt tady čekám” začíná.

Kdo vyhrál?

No uživatel pÅ™ece. Nepoužívejte vlastnost class pro nastavení třídy elementu – je to rezervované slovo. Místo toho je tÅ™eba použít className.


Pondělí, 1. srpen 2005

Moje zkušenost s WYSIWYG aplikacemi

To jsem tak vzpomínal na začátky s MS FrontPage a napadlo mě přirovnání.

WYSIWYG

Kdo ten akronym nezná, nepochopí.


Rubriky

Navigace

Hledání