Gegeben eine regexp, würde ich gerne Zufallsdaten x Anzahl der Zeit generieren, um etwas zu testen.
z.B.
%Vor%Natürlich ist es das Ziel, etwas komplizierteres zu tun als Telefonnummern und E-Mail-Adressen.
Gibt es so etwas? Wenn ja, existiert es für Python? Wenn nicht, irgendeine Ahnung / Theorie könnte ich verwenden, um das zu tun?
Pyparsing enthält diesen Regex-Inverter , der einen Generator aller Permutationen für einfache Regexe zurückgibt. Hier sind einige der Testfälle aus diesem Modul:
%Vor%Bearbeiten:
Um Ihre zufällige Auswahl zu treffen, erstellen Sie eine Liste (einmal!) Ihrer Permutationen, und rufen Sie dann random.choice
in der Liste jedes Mal auf, wenn Sie eine zufällige Zeichenfolge haben wollen, die der Regex entspricht, etwa so (ungetestet):
Es gibt einen Post auf der Python-Mailingliste über ein Modul, das generiert alle Permutationen einer Regex. Ich bin mir nicht so sicher, wie du es mit Randomisierung machen könntest. Ich werde weiter nachsehen.
Tags und Links python regex data-generation