On Sun, 2010-07-11 03:16:59 +0200, Benedikt Wildenhain <[email protected]> wrote: > On Sat, Jul 10, 2010 at 11:51:01AM +0200, Sascha Effert wrote: > > größer als 783 and kleiner als 57954 sind, also alle Werte, die in > > einem von ihnen spezifizierten Bereich liegen. Kann ich so eine > > Abfrage auf Regular Expressions abbilden? > Im Prinzip schon, aber es ist ein wenig umständlich: > Für das Beispiel musst du folgendes erfassen: > 0*(78[4-9]|79[0-9]|[89][0-9][0-9]|[1-9][0-9][0-9][0-9]| > [1-4][0-9][0-9][0-9][0-9]|5[0-6][0-9][0-9][0-9] ...) > > also hier erstmal bis zum nächsten Vielfachen von 10, 100, 1000, 10000 > abdecken, dann die Zahlen >10000, <50000 und dann wieder entsprechend > kleinschrittiger werden. Ob das für dich eine sinnvolle Methode ist, die > Suche einzugrenzen, ist natürlich eine andere Frage.
...zumal das Ausführen von regexec() nicht gerade "schnell" ist. Und
extra-langsam wirds, wenn man dann nicht ein festes Ein-Byte-Charset
nutzt, sondern z.B. UTF-8.
Da ists _vermutlich_ deutlich schneller, die Zahl mit atoi() etc.
wirklich in eine /Zahl/ zu verwandeln und dann einen simplen
Zahlenvergleich zu tätigen.
MfG, JBG
--
Jan-Benedict Glaw [email protected] +49-172-7608481
Signature of: http://www.eyrie.org/~eagle/faqs/questions.html
the second :
signature.asc
Description: Digital signature
-- Linux mailing list [email protected] subscribe/unsubscribe: http://lug-owl.de/mailman/listinfo/linux Hinweise zur Nutzung: http://www.lug-owl.de/Mailingliste/hints.epo
