Shop-Hilfe.com
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 12.03.2005, 22:53   #1
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User

Reg Expression


Wer spricht fliessend regex ?

brauche folgene Ersetzung:

alle @ nach \@
alle $ nach \$
alle " nach \"

ich möchte das gerne als einen Ausdruck statt in 3 Zeilen, kann leider nicht fliessend regex
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten


Alt 12.03.2005, 23:35   #2
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
Hi !

müsste irgendwie so gehen:
PHP-Code:
$s preg_replace("/([@$\"])/"'\$1'$s);
// oder
$s preg_replace("/([@$\"])/"'\$0'$s); # bin mir mit dem $1 oder $0 nicht so ganz sicher...
// oder
$s str_replace(array('@','$','"'), array('\@''\$''\"'), $s); 
Gruss
Jan
Stuck Mojo ist offline   Mit Zitat antworten
Alt 12.03.2005, 23:42   #3
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
nur Deine dritte Lösung geht
würd mich trotzdem für die richtige regex interessieren, wills doch ein bisserl besser verstehen, wenn ich es schon nicht hinkrieg
auch schon weil ich das dann auch in perl benutzen kann.
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 12.03.2005, 23:55   #4
TP-Insider
 
Benutzerbild von HoRnominatoR
 
Registriert seit: Dec 2003
Ort: nienburg (raum hannover)
HoRnominatoR ist auf einem guten Weg
wozu regexp?

$newstring = strtr($oldstring, array('@' => '\@', '$' => '\$', '"' => '\"'));
__________________
in eile kam er,
in schwarzem gewand,
aus den tiefen des waldes,
ein einsamer mann, ein geschoepf der freiheit,
ein geschoepf ohne furcht,
doch alle nannten sie ihn nur T O D
HoRnominatoR ist offline   Mit Zitat antworten
Alt 12.03.2005, 23:55   #5
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
dann mal so?
PHP-Code:
$s preg_replace("/([@$\"])/"'\\\$1'$s);
// oder
$s preg_replace("/([@$\"])/""\\\\\\1"$s); 
?
Stuck Mojo ist offline   Mit Zitat antworten
Alt 12.03.2005, 23:58   #6
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
oder strtr ...richtig... wie immer führen hier auch zig Wege zum Ziel. Wobei ich hier auch nicht zu regex rate - die anderen Stringfunktionen sind bei soetwas meist fixer.
Stuck Mojo ist offline   Mit Zitat antworten
Alt 13.03.2005, 00:01   #7
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
Hey StuckMojo beide Ausdrücke gehen ! Danke
könntest Du mir einen Satz dazu sagen ?

@HoRnomiatoR sagt ich doch : 1. wegen perl und 2. wegen Verständnis (oder umghekehrt )

aber trotzdem danke für die andere Lösung mit strtr - ist auch noch nicht in meinem alltäglichen repertoire
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer

Geändert von steffenk (13.03.2005 um 00:04 Uhr).
steffenk ist offline   Mit Zitat antworten
Alt 13.03.2005, 00:16   #8
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
ich versuchs mal ...
"/([@$\"])/", '\\\$1'

/ begin
( suche nach
[] Begrenzung der Zeichen
\\\$1 - ok, zeichen wird mit \ maskiert, aber warum \\\ ?
\\ ist klar, der maskierte Backslash, aber warum muss die var $1 auch maskiert werden ?
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 13.03.2005, 00:27   #9
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
/ - zu Beginn und zum Ende... kann auch irgendwas anderes sein
(...) - um das ergenis/die treffer in $1 oder \\1 zu erhalten
[@$\"] - steht genau für ein Zeichen, dass entweder @ oder $ oder " sein kann (eine Zeichenklasse).

Mit dem maskieren musste ich eben auch rumprobieren: Dabei scheint es wie folgt abzulaufen:
- als erstes interpretiert PHP den ganzen Kram. Daher der erste Slash maskiert.
- zusätzlich muss das $ maskiert werden, was anschein aber erst in der Regex-Maschine nötig zu sein scheint - zumindest in php. (Benutzt man double-quotes muss ein weiterer Slash maskiert werden.)

So scheint es mir zumindest zu sein.

Gruss
Jan

PS: http://www.traum-projekt.com/forum/s...ad.php?t=27341
Stuck Mojo ist offline   Mit Zitat antworten
Alt 13.03.2005, 00:38   #10
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
danke Jan, habs zwar noch nicht ganz gecheckt, aber der Ansatz ist da.
Das in php $ maskiert werden muss, ist mir neu - in perl ist das so.
mit doublequotes kan ich auch nachvollziehen.
Bedient sich php bei regex einer anderen engine ?
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 13.03.2005, 00:41   #11
TP-Moderator
 
Benutzerbild von Stuck Mojo
 
Registriert seit: Feb 2001
Ort: Helmstedt/Wolfsburg
Stuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKEStuck Mojo ist ein richtiges Arbeitstier - DANKE
http://de.php.net/manual/de/ref.pcre.php ...Perl-Kompatibel. Zu den Funktionen ereg und eregi gibt es somit Unterschiede.

Gruss
Jan
Stuck Mojo ist offline   Mit Zitat antworten
Alt 13.03.2005, 01:00   #12
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
ah ok danke, i got it
den workshop von webmichl hatte ich auch noch nicht entdeckt - war noch vor meiner Zeit hier
... irgendwie bekomme ich immer hirnknoten bei regex, das muss besser werden !
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Reg Expression Reg Expression
« Geldfunktion | Kann mir wer weiterhelfen??? »

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

Erweiterte Suche
Thema bewerten
Thema bewerten:

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 an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:14 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67