Marc Schiffbauer wrote:
function gb_Validator(f) { if (window.RegExp) { var reg = new RegExp("[^Hallo]","g"); <-- Da is was faul
So einfach geht's leider nicht. Es gibt in regulären Ausdrücken AFAIK keine Möglichkeit, eine bestimmte Zeichen_folge_ auszuschließen. Mit einzelnen Zeichen ist das kein Problem -- z.B. paßt Dein Ausdruck auf alle Strings, die ein Zeichen enthalten, daß kein 'H', 'a', 'l' oder 'o' ist.
if (!reg.test(f.elements[0].value)) {
Der einzige Weg, der mir einfällt, besteht darin, zu Testen, ob der String gleich "Hallo" ist, und dann diese Abfrage entsprechend negieren.
Der Rest der function darf nicht veraendert werden! (weil wird autom. generiert...)
Tja, dann hast Du ein Problem. Vielleicht kann man sich irgendeinen (wohl sehr aufwendigen) Ausdruck zusammenbauen, der (in Form von Alternativen) geschickt alle zulässigen Möglichkeiten abdeckt, aber so auf Anhieb fällt mir eine solche Lösung gerade nicht ein -- schön wird's wohl nicht aussehen. Ich müßte irgendwann mal in Ruhe drüber nachdenken... Eilert -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org - eilert@linuxfreak.com http://www.informatik.uni-bremen.de/~eilert/ --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Eilert Brinkmann schrieb am 27.Okt.2000:
Marc Schiffbauer wrote:
function gb_Validator(f) { if (window.RegExp) { var reg = new RegExp("[^Hallo]","g"); <-- Da is was faul
Tja, dann hast Du ein Problem. Vielleicht kann man sich irgendeinen (wohl sehr aufwendigen) Ausdruck zusammenbauen, der (in Form von Alternativen) geschickt alle zulässigen Möglichkeiten abdeckt, aber so auf Anhieb fällt mir eine solche Lösung gerade nicht ein -- schön wird's wohl nicht aussehen. Ich müßte irgendwann mal in Ruhe drüber nachdenken...
([^H])|(.[^a])|(..[^l])|(...[^l])|(....[^o]) Bernd -- Homepages von deutschsprachigen Linux-Gurus: Kristian Köhntopp: http://www.koehntopp.de/kris/artikel/ Sven Guckes: http://www.math.fu-berlin.de/~guckes/sven Robin S Socha: http://socha.net/index2.html |Zufallssignatur 10 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Sam, Okt 28, 2000 at 01:00:35 +0200, Bernd Brodesser wrote: [Hallo-Problem]
([^H])|(.[^a])|(..[^l])|(...[^l])|(....[^o])
Urks! ;-) es sind solche Ausdrücke (schäm Dich, Bernd ;-), die mich den Glauben an die guten alten awk-Zeiten nicht verlieren lassen: In einem awk liest sich das IIRC so (ungetestet): awk ' ! /^Hallo/ { do_something } ' Eingabedatei >Ausgabedatei Jan --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
* Jan Trippler schrieb am 28.Okt.2000:
On Sam, Okt 28, 2000 at 01:00:35 +0200, Bernd Brodesser wrote: [Hallo-Problem]
([^H])|(.[^a])|(..[^l])|(...[^l])|(....[^o])
Urks! ;-)
;))
In einem awk liest sich das IIRC so (ungetestet): awk ' ! /^Hallo/ { do_something } ' Eingabedatei >Ausgabedatei ^
Das ! ist hier das Entscheidende. Sowas gibt es auch in perl und sed, selbst grep hat das (-v), ich glaube jede Sprache, die RegExp benutzt. Selbst gehören solche Negatoren aber nicht zu RegExp. Und da nur nach RegExp gefragt war, ... Bernd -- Umsteiger von Microsoft Windows xx? Hast Du schon file://usr/doc/howto/de/DE-DOS-nach-Linux-HOWTO.txt gelesen? Auch file://usr/doc/Books/Linuxhandbuch.dvi ist zu empfehlen. |Zufallssignatur 1 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Bernd Brodesser wrote:
* Eilert Brinkmann schrieb am 27.Okt.2000:
Marc Schiffbauer wrote:
function gb_Validator(f) { if (window.RegExp) { var reg = new RegExp("[^Hallo]","g"); <-- Da is was faul
Tja, dann hast Du ein Problem. Vielleicht kann man sich irgendeinen (wohl sehr aufwendigen) Ausdruck zusammenbauen, der (in Form von Alternativen) geschickt alle zulässigen Möglichkeiten abdeckt, aber so auf Anhieb fällt mir eine solche Lösung gerade nicht ein -- schön wird's wohl nicht aussehen. Ich müßte irgendwann mal in Ruhe drüber nachdenken...
([^H])|(.[^a])|(..[^l])|(...[^l])|(....[^o])
Hm Schade Bernd.. das klappt leider nicht. :-( Hatte mich schon gefreut ;) Trotzdem besten Dank fuer die Muehe. Noch ne andere Idee? Gruss -Marc -- +------------------------------------------------------------------+ | --> http://www.links2linux.de <-- Von Linux-Usern fuer Linux-User| | | +---Registered-Linux-User-#136487------------http://counter.li.org + --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Bernd Brodesser wrote:
* Eilert Brinkmann schrieb am 27.Okt.2000:
Marc Schiffbauer wrote:
function gb_Validator(f) { if (window.RegExp) { var reg = new RegExp("[^Hallo]","g"); <-- Da is was faul
Tja, dann hast Du ein Problem. Vielleicht kann man sich irgendeinen (wohl sehr aufwendigen) Ausdruck zusammenbauen, der (in Form von Alternativen) geschickt alle zulässigen Möglichkeiten abdeckt, aber so auf Anhieb fällt mir eine solche Lösung gerade nicht ein -- schön wird's wohl nicht aussehen. Ich müßte irgendwann mal in Ruhe drüber nachdenken...
([^H])|(.[^a])|(..[^l])|(...[^l])|(....[^o])
Ok bin noch ein Stueck weiter: ^([^H])|(.[^a])|(..[^l])|(...[^l])|(....[^o])$ Jetzt funzts bis auf eine Ausnahme: Es ist auch jeder String verboten, der mit Hallo anfaengt... Aber damit laesst sich jetzt schon mal arbeiten. Gruss -Marc -- +------------------------------------------------------------------+ | --> http://www.links2linux.de <-- Von Linux-Usern fuer Linux-User| | | +---Registered-Linux-User-#136487------------http://counter.li.org + --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
participants (4)
-
B.Brodesser@online-club.de
-
eilert@Informatik.Uni-Bremen.DE
-
Jan.Trippler@t-online.de
-
marc.schiffbauer@links2linux.de