Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
Alt 03.01.2009, 09:34 Nach oben    #1
Erfahrener Benutzer
 
Registriert seit: 16.08.2008
Ort: Mecklenburg-Vorpommern
Beiträge: 314
Standard MySQL (oder PHP) Regular Expressions

Hallo liebe Entwicklergemeinde,

seit einiger Zeit beschäftigt mich bereits die Frage:
Regular Expressions:
Wie kann ich in MySQL angeben, das nach einem gefundenen Ausdruck y-viele Zeichen von x-beliebiger Art stehen KÖNNEN, aber nicht müssen?

Beispiel:
[123]...[789] - es dürfen maximal vier beliebige Zeichen dazwischen vorkommen, es können aber auch nur zwei oder drei, oder gar kein Zeichen sein.
Ich bin am überlegen, ob es noch eine bessere Variante als die "beliebiges Zeichen"{0:4} gibt, da man hier wirklich jedes zu berücksichtigende Zeichen aufführen muss. Sollte es eine bessere Methode geben, frage ich auch gleich, ob man - für zukünftige Anwendungsgebiete - auch den Zeichentyp (Zahl, Sonderzeichen, Buchstabe) bestimmen kann.

Die Frage, deren Antwort sich hoffentlich mit der Lösung zu diesem Beispiel von selbst ergibt, die dann noch offen bleibt, ist: wie kann ich einschränken, dass z.B. maximal 3 (beliebig oder festgelegt) Zeichen eines bestimmten oder beliebigen Types aufeinanderfolgen können?

Ein Beispiel:
[123]...[ABC] - der erste Part ist definitiv/bis zu 3 Zeichen lang und nummerisch, dann KÖNNEN bis zu X Zeichen folgen, müssens aber nicht und der nächste Teil ist ein Wert aus 3 Großbuchstaben/Buchstaben, aber definitiv nicht nummerisch.


Am besten fände ich es, wenn man dies nun elegant und perfomant in MySQL lösen könnte, zur Not wäre PHP aber auch in Ordnung.

Vielen Dank für Anregungen und Ideen!

Liebe Grüße
und einen guten Rutsch nachträglich!
Sekundentakt ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.01.2009, 11:47 Nach oben    #2
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.365
Standard

Soweit ich weiß unterstützt MySQL doch den normalen Umfang für regex, oder?
Code:
[1-90]{0,3}.{0,X}[A-Z]{3}
Müsste doch eigentlich klappen, wobei du das X natürlich durch was auch immer für ne Zahl ersetzen müsstest.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.01.2009, 11:59 Nach oben    #3
Erfahrener Benutzer
 
Registriert seit: 16.08.2008
Ort: Mecklenburg-Vorpommern
Beiträge: 314
Standard

Danke!

Das einzige, was mich an dem RegExp stört - sorry, kannst du nicht wissen, weil ich ungenau war - ist:

Ich möchte, dass diese beliebigen Zeichen zwischen den Ausdrücken nun beliebig Leerzeichen, Bindestriche, Ausrufezeichen o.Ä. darstellen können.
Das Wort beliebig ist vielleicht verwirrend.

Beispiel:
[123]-!-[ABC] Es muss ein RegExp her, der die Zeichen " ", "-" und "!" zulässt, diese dürfen aber nur maximal X mal auftreten.
Oder mit anderen Worten, es dürfen zwischen [123] und [ABC] insgesamt höchstens 3 Zeichen vom Typ Leerzeichen, Bindestrich oder Ausrufezeichen stehen.Sollten es andere sein (oder mehr), darf der RegExp nicht mehr funktionieren.

Gruß
und danke für die Anregung!
Sekundentakt ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.01.2009, 15:30 Nach oben    #4
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.365
Standard

Dann ersetz den . einfach durch [-! ] müsste deine Anforderungen erfüllen.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.01.2009, 15:34 Nach oben    #5
Erfahrener Benutzer
 
Registriert seit: 16.08.2008
Ort: Mecklenburg-Vorpommern
Beiträge: 314
Standard

Danke, werde ich alsbald möglcih ausprobieren! :)
Ich melde mich mit Ergebnissen zurück.
Sekundentakt ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Book Review: PHP and MySQL by Example. Ben Literatur 0 06.01.2007 23:11
[Linux] LAMP Tutorial - Installation von Apache, MySQL und PHP unter Linux Corvin Tutorials 6 17.04.2006 22:13
Simpler PHP 4/5 Webspace mit Mysql Buhmann Gesuche 11 07.02.2006 09:19
Regular Expressions (ein anderes Problem) alekz Allgemeine Java-Programmierung 1 31.10.2004 14:41
Regular Expressions lavender Allgemeine Java-Programmierung 5 27.10.2004 13:02


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:24 Uhr.


Powered by vBulletin® Version 3.8.4 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47