Autor |
Nachricht |
smile jamaica
Threadersteller
Dabei seit: 31.10.2003
Ort: Freiburg
Alter: 39
Geschlecht:
|
Verfasst Fr 06.02.2004 12:10
Titel [php] preg_match_all RegExp Problem |
|
|
ich hab ein string und ein pattern ser pattern kommt öfters im string vor daher preg_match all. im pattern steht etwas von "<td>.*</td>" für das .* nimmt er immer den größtmöglichen wert z.B <td> "jdshjkshkjhkj</td><td>jkdfhjkjks" als .* </td>. Ich möcht aber das er für .* den kleinst möglichen wert nimmt also <td> "jfhjhsdhkkh" </td>. wie heißt der modifer dazu?
|
|
|
|
|
smile jamaica
Threadersteller
Dabei seit: 31.10.2003
Ort: Freiburg
Alter: 39
Geschlecht:
|
Verfasst Fr 06.02.2004 12:17
Titel
|
|
|
ah hab den modifier schon gefunden. es war U für ungreedy oder so hat sich also schon erledigt
|
|
|
|
|
Anzeige
|
|
|
tacker
Dabei seit: 22.03.2002
Ort: Trondheim, Norwegen
Alter: 43
Geschlecht:
|
Verfasst Fr 06.02.2004 13:20
Titel
|
|
|
Änder dann doch den Titel bitte in "<Alter Titel> [solved]" um.
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Fr 06.02.2004 13:21
Titel
|
|
|
da hab ich mir auch schon die Haare dran ausgerissen....
allerdings greift das nicht bei
<td>[...]<td>blahbla</td>[...]</td>, da nimmt er nämlich
<td>[...]<td>blahbla</td>[...]</td>[/b]
|
|
|
|
|
oDeM
Dabei seit: 14.12.2003
Ort: Hürth
Alter: 41
Geschlecht:
|
Verfasst Fr 06.02.2004 14:43
Titel
|
|
|
Joa da musste Lazyness einstellen.
Code: | preg_match_all(%<[\w]+>(.+?)</[\w]+>%, $seachrstring, $matches); |
oder
Code: | preg_match_all(%<[^>]+>(.+?)</[^>]+>%, $seachrstring, $matches); |
oder
Code: | preg_match_all(%<.+?>(.+?)</.+?>%, $seachrstring, $matches); |
hab keinen bock zu testen;
aber eins von den drein müsste auf jeden fall gehen
Zuletzt bearbeitet von oDeM am Fr 06.02.2004 14:45, insgesamt 1-mal bearbeitet
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Fr 06.02.2004 20:58
Titel
|
|
|
Junge, wenn eins von denen klappt, kriegsten Orden... bis jetzt musste ich für sowas immer parsen... und das frisst natürlich Ressourcen. Obwohl... für unendlich tiefe Schachtelungen passt das Obige auch nicht, oder?
mal ausprobieren....
ach so.. nee, dat klappt natürlich auch nicht, brauch ich gar nicht ausprobieren, sorry. Die Problematik liegt einfach woanders.
Was meinst du denn mit lazyness?
Zuletzt bearbeitet von am Fr 06.02.2004 21:04, insgesamt 2-mal bearbeitet
|
|
|
|
|
tacker
Dabei seit: 22.03.2002
Ort: Trondheim, Norwegen
Alter: 43
Geschlecht:
|
Verfasst Di 10.02.2004 10:22
Titel
|
|
|
Kannst Du nochmal genauer Beschreiben, was Du hast
und was du haben möchtest?
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Di 10.02.2004 10:44
Titel Re: [php] preg_match_all RegExp Problem |
|
|
meinst du mich? die frage war:
smile jamaica hat geschrieben: | ich hab ein string und ein pattern ser pattern kommt öfters im string vor daher preg_match all. im pattern steht etwas von "<td>.*</td>" für das .* nimmt er immer den größtmöglichen wert z.B <td> "jdshjkshkjhkj</td><td>jkdfhjkjks" als .* </td>. Ich möcht aber das er für .* den kleinst möglichen wert nimmt also <td> "jfhjhsdhkkh" </td>. wie heißt der modifer dazu? |
das leitet zur o.g. problematik über... wobei aber klar sein dürfte, dass regex hier nicht ausreicht, wenn es um unendlich viele schachtelungen des typs <x>...<x>...</x>...</x> geht.
|
|
|
|
|
|
|
|
Ähnliche Themen |
[PHP] RegExp NERRRRV!
Javascript Regexp
Javascript RegExp
[PHP] regexp & listen
[javascript] replace() ersetzt nur einen match
Abfrage in nicht normalisierter Tabelle - Regexp die Lösung?
|
|