Thread regex automatisch erstellen
(6 answers)
Opened by kristian at 2007-10-20 19:09
Hallo
Ich versuche automatisiert regex zu erstellen, die ich dann in eine Datei schreibe. Ich will den Bereich zwischen zwei Zahlen matchen. Beispiel: Bereich 28 -> 31 => m/(28|29|30|31)/ Dies mache ich hier einfach mit $string = 'm/(' . join("|", ($first_number..$last_number)) . ')/' Bei grösseren Bereichen wird der String natürlich sehr lang. Ich hätte lieber: m/(2[8-9]|3[0-1])/ oder anderes Beispiel: Bereich 128 -> 255 => m/(128|129|130|131|132| [..usw..] 249|250|251|252|253|254|255)/ soll sein: m/(12[8-9]|1[3-9][0-9]|2[0-4][0-9]|25[0-5])/ Es soll universell für Zahlenbereiche funktionieren, die zwischen 0 und 255 liegen. Mir ist auch klar, dass die regex vor der Ausführung wieder durch den langen String repräsentiert wird und das Kürzen nicht wirlich CPU-freundlich ist, allerdings will ich in der Datei den Ball flach halten. Hat eine(r) ne Idee, wie ich das hinbekommen könnte? TIA Kristian |