hallo,
ich versuche gerade (angespornt durch den google calendar) zu versuchen, einen regex für das eingeben von datumsangaben zu erstellen.
format wäre:
Tag Uhrzeit Dauer Text
alle 4 sind optional, aber eines ist mindestens gegeben
Uhrzeit sieht aus wie folgt: hh:mm bzw mit pm/am
Dauer: [0-9]m|h
Text kann irgendwas sein
mein versuch war
date = "([0-9]{1,2})([/.][0-9]{1,2})?([/. ][0-9]{2,4})?"
time = " *([0-9]{1,2})(:[0-9]{1,2})?( ?am| ?pm| ?AM| ?PM| ?p| ?a)?"
duration = " [0-9]{1,3}(m|h)"
text = "(( ?\\w+)+)''
return str.scan(/^#{date}(#{time})?(#{duration})?#{text}?$/)
str ist der string selbst
falls es jem. interessiert, das bissl code ist in ruby geschrieben, sollte aber hoffentlich keinen einfluss auf den regex selbst haben
irgendwie klappt mein code auch nicht ordentlich, zb funktioniert
"15 test" nicht, er erkennt hier den text nicht als solchen...
falls dazu jem. etwas einfällt, bitte melden - bin für jeden tipp dankbar
vielen dank schon mal im voraus
lg
bosie