Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.

PQ Discord Server: #planetquake                                                                                                                                         Spenden? Hier entlang!

[Help]regular expression

Forum für alles rund ums Coden und web.design - HTML, XHTML, XML, CSS, PHP, ASP, Zugriffsrechten, Mods uvm.
Cpt.Gambit
Doom
Doom
Beiträge: 3599
Registriert: Jul 2003

Beitrag von Cpt.Gambit »

\((\w+)\)
Das funktioniert bei mir nicht. Klar mein RegTester (http://regexlib.com/RETester.aspx) sagt, dass es fein wäre, aber mein "rule file" parst gar nix raus, brintg nicht mal ne Fehlermeldung im Log.

\((.*?)\).*
War meine große Hoffnung. Aber wenn ich das bei mir einbinde startet meine Probe gar nicht mehr, im Log steht:
Regular Expression Error: nested *?+
Rules file '/opt/netcool/bla/blubb/blabla/hust.rules' line 84: Failed to compile regular expression: malloc() failed

:thumbdown


Trotzdem danke für die Mühe
Bild
digitus
Uriel
Uriel
Beiträge: 2969
Registriert: Feb 2001

Beitrag von digitus »

Dann würd ich erstmal in der Referenz von diesem IBM Dings nachkucken welche RegEx es unterstützt.
Bild
HomicideSapiens
Patriot
Patriot
Beiträge: 1303
Registriert: Feb 2002

Beitrag von HomicideSapiens »

\(([^\)]*)\).*
(das ist das komplement von dem digitus2 sprach) könntest du noch probieren.

Greed sollte man meiner Meinung nach immer vermeiden, wenn der Anwendungsfalls es nicht zwingend erforderlich macht. Grad wenn man in einer regex mehrere .* verwendet kann das ein performance-problem werden.

siehe auch catastrophic backtracking:http://www.regular-expressions.info/catastrophic.html
There are only 10 types of people in in the world: Those who understand binary and those who don't.
Cpt.Gambit
Doom
Doom
Beiträge: 3599
Registriert: Jul 2003

Beitrag von Cpt.Gambit »

Hallo ich wiedermal :D

ich brauch nen regulären Ausdruck und bin hier schon seit ner Stunde am Rätseln kriegs aber nicht hin :mad:

der reguläre Asudruck soll treffen, wenn Not in einem String vorkommt.
Aber nur Not wenn es alleine steht oder in einer Komma-getrennten Folge steht, aber nicht wenn es zum Beispiel SeeNot heißt oder NotFall.

Not = treffer
Not, Angst = treffer
Angst, Not = treffer
Panik, Not, Kot = Treffer
SeeNot = kein Treffer
NotDurft = kein Treffer

zu Hülf ich bin in Not! :ugly:
Bild
xxx
Bones
Bones
Beiträge: 3074
Registriert: Aug 2003
Kontaktdaten:

Beitrag von xxx »

Bild
Cpt.Gambit
Doom
Doom
Beiträge: 3599
Registriert: Jul 2003

Beitrag von Cpt.Gambit »

Wenns so einfach wäre ..
Ich hab halt nur so ne Netcool Library zur Verfügung, die sehr eingeschränkt ist.
Mir stehen nur:
+ * . ? $ | \ ^ [abcd] [a-d] zur Verfügung.

Fällt jemandem dazu was ein?
Bild
h4zz4rd
Patriot
Patriot
Beiträge: 1287
Registriert: Jun 2001

Beitrag von h4zz4rd »

Dann halt von hinten durch die Brust ins Auge...

(^[Not].$) | ([^a-zA-Z]+[Not].$) | (^[Not].[^a-zA-Z]+) | ([^a-zA-Z]+[Not].[^a-zA-Z]+)

Bin da ein bisschen raus, aber so könnte man die Boundaries vielleicht nachbilden. Syntax ist also völlig ungetestet und ich hadere auch manchmal damit, wann "^" der Anfang des Strings und wann eine Inversion ist...

Die Idee ist folgende:
Fall 1:
das "Not" steht am Anfang des Strings und gleichzeitig am Ende
Fall 2:
Vor dem "Not" kommt ein Nicht-Buchstabe und danach ist Feierabend
Fall 3:
Das "Not" steht am Anfang des Strings und danach kommt ein Nicht-Buchstabe
Fall 4:
Vor und nach dem "Not" kommt mindestens ein Nicht-Buchstabe
Bild
radon
Ranger
Ranger
Beiträge: 7
Registriert: Nov 2007

Beitrag von radon »

Code: Alles auswählen

/(([^\w]Not)|(Not[^\w])|(^Not$))/
Klappt beim testen mit php regex und deinen Beispielen.

\w ist übrigens := [a-zA-Z0-9_]
Cpt.Gambit
Doom
Doom
Beiträge: 3599
Registriert: Jul 2003

Beitrag von Cpt.Gambit »

Naja das mit \w und \b geht ja nicht -.-
Aber danke an h4zz4rd. Werd ich mal versuchen, wenn ich mit meiner Array und Substring Variante nicht weiterkomme.
Bild
Urstoff
Biker
Biker
Beiträge: 1018
Registriert: Sep 2008

Beitrag von Urstoff »

h4zz4rd hat geschrieben:(^[Not].$) | ([^a-zA-Z]+[Not].$) | (^[Not].[^a-zA-Z]+) | ([^a-zA-Z]+[Not].[^a-zA-Z]+)
Er kann nur [a-d] verwenden. :ugly:
Und kann es sein, daß Du statt [Not] eigentlich (?:Not) haben möchtest?
h4zz4rd
Patriot
Patriot
Beiträge: 1287
Registriert: Jun 2001

Beitrag von h4zz4rd »

Urstoff hat geschrieben:Er kann nur [a-d] verwenden. :ugly:
Und kann es sein, daß Du statt [Not] eigentlich (?:Not) haben möchtest?
Ja, das kann wohl sein... Ich sagte ja, dass ich etwas eingetrocknet sei! :-)
Ich hätte aber auch [N].[o].[t]. schreiben können... :ugly:
Bild
Antworten