Archiv verlassen und diese Seite im Standarddesign anzeigen : Logisches Und?
andruide
12.09.2007, 13:36
Hi,
ich bin auf der Suche nach einer Möglichkeit die folgendes realisiert:
* Prüfung nach dem Muster /^[a-zA-Z0-9_]{3,41}$/
* Werte wie "index", "action" bzw. "controller" dürfen nicht vorkommen
Klar kann man das auch im Nachhinein prüfen, aber das soll nicht Sinn bzw. Ziel der Sache sein.
Wie setzte ich das in einem Ausdruck um? Das logische Oder gibt es ja mit dem "|"-Operator, ein logisches Und konnte ich allerdings nicht finden? Ich danke für eure Antworten.
Firefall
12.09.2007, 17:00
Spontan würde ich sagen, dass das mit dem negative lookbehind (Oder auch lookahead) möglich sein müsste. WIrd aber nicht von jeder RegExp-Implementierung unterstützt.
Sieh dir mal http://www.coding-board.de/board/showthread.php?t=24932 an
Ein logisches UND erhältst du automatisch durch Auflistung der Ausdrücke mit dem logischen ODER und einer Negierung davor, d.h.:
NOT(expr_A OR expr_B) = (NOT expr_A) AND (NOT expr_B)
Firefall
13.09.2007, 18:25
Ein logisches UND erhältst du automatisch durch Auflistung der Ausdrücke mit dem logischen ODER und einer Negierung davor, d.h.:
NOT(expr_A OR expr_B) = (NOT expr_A) AND (NOT expr_B)
Und wie soll das in RegExp laufen?
Und wie soll das in RegExp laufen?
Nun, sobald andruide seine nicht erwünschten Ausdrücke mit Hilfe von Alternativen in einem negativen Lookaround formuliert, hat er sein logisches UND.
Firefall
14.09.2007, 13:27
Nun, sobald andruide seine nicht erwünschten Ausdrücke mit Hilfe von Alternativen in einem negativen Lookaround formuliert, hat er sein logisches UND.
Hat aber mit der Binärlogik nichts zu tun, da das Not schon vom Lookbehind angeboten wird ;) Aber egal. Hauptsache er kriegts hin?
eViL_oNe
14.09.2007, 15:02
Hat aber mit der Binärlogik nichts zu tun, da das Not schon vom Lookbehind angeboten wird ;)
mitnichten -- über den negativen Lookaround und das | wird ein NOR angeboten -- und damit lassen sich alle logischen Verknüpfungen abbilden ;)
a NOR b = (NOT A) AND (NOT B)
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.