| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| wuschelkopp Registriert seit: Aug 2004
Beiträge: 1.468
| RegExp einfacher ausdrücken
Heyho, folgender RegExp funktioniert soweit schön: PHP-Code: PHP-Code: Bin gerade etwas überfragt. Vllt kann ja jmd nachhelfen, danke schonmal!
__________________ listening to techno & minimal :> |
| | |
| | #2 (permalink) |
| ~~~~~~~~~~~~ Registriert seit: May 2002 Ort: AUSTRIA (OÖ)
Beiträge: 3.298
|
Ich nehmen mal an du willst den <tr>lalala irgendwas </tr> auslesen, dann versuchs mal mit: Code: < *tr[^>]*>.*?< */tr[^>]*> Code: <table>asdf asfd safd <tr class="asdasd"><td> asdlkja sd<> </td> <td> asdasdj fasad <td> </td></tr> asdflaks jfdalsdf dsf</table> Regular Expression HOWTO Testen kannst du deine regExp für Flash übrigends sehr einfach auf: RegExr: Online Regular Expression Testing Tool ![]() lg
__________________ --- :P --- Blog Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker |
| | |
| | #3 (permalink) |
| wuschelkopp Registriert seit: Aug 2004
Beiträge: 1.468
|
Danke erstmal. Das ungreedy für .* habe ich mittels dem Modifier "U" geregelt. Ich möchte nicht nur den Inhalt zwischen <tr> und </tr> auslesen, sondern den Inhalt der 5 einzelnen Spalten (<td>...</td>). Daher habe ich das ja einmalig als Gruppe definiert und danach mittels Quantifier auf {5}-faches vorkommen gesetzt. Aber das klappt seltsamerweise ja nicht.
__________________ listening to techno & minimal :> |
| | |
| | #4 (permalink) |
| ~~~~~~~~~~~~ Registriert seit: May 2002 Ort: AUSTRIA (OÖ)
Beiträge: 3.298
|
Also: Code: asd asd asd <table> <tr> <td>Der Inhalt hier ist gefragt 1 <> ?</td> <td>Der Inhalt hier ist gefragt 2 <> ?</td> <td class="paperTitle">Der Inhalt hier ist gefragt 3 <> ?</td> <td>Der Inhalt hier ist gefragt 4 <> ?</td> <td>Der Inhalt hier ist gefragt 5 <> ?</td> </tr> </table> asd asd adASDASD
__________________ --- :P --- Blog Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker Geändert von _geo_ (22-05-2010 um 13:23 Uhr) |
| | |
| | #6 (permalink) |
| ~~~~~~~~~~~~ Registriert seit: May 2002 Ort: AUSTRIA (OÖ)
Beiträge: 3.298
|
argl stimmt copy paste Fehler sry, habs ausgebessert ^^ Sind in dem Text noch mehr <tr> s etc. also is der tr tag dessen tds du haben willst irgendwie gekennzeichnet? edit: Habs jetzt mit: Code: $regexp = '|(<\s*tr[^>]*>(.*<td>(.*)</td>.*)*<\s*/tr[^>]*>)|Uis';
__________________ --- :P --- Blog Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker Geändert von _geo_ (22-05-2010 um 13:22 Uhr) |
| | |
| | #7 (permalink) |
| wuschelkopp Registriert seit: Aug 2004
Beiträge: 1.468
|
ja ich frage mich halt, wieso der 2. regexp nicht das gleiche ist wie mein 1.! ich habe ja, anstatt 5 mal den term \s*<td>(.*)</td> hinzuschreiben, einfach einmal (\s*<td>(.*)</td>){5} geschrieben, müsste ja eigentlich passen oO edit: habe den code, in dem ich das gebraucht hätte, eh schon anders gelöst, aber rein aus interesse würds mich halt trotzdem interessiern oO
__________________ listening to techno & minimal :> |
| | |
| | #8 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
weil es bedeutet, dass die Passage zwischen den Klammern 5x hintereinander vorkommen muss, er aber nur 1 Ergebniswert dafür zurückgibt. vermutlich den ersten oder letzten fund. => 1 ergebnis / Klammerpaar (für jeden Treffer des Reg. gesamtausdruckes) |
| | |
| | #10 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
String: PHP-Code: PHP-Code: PHP-Code: der multiplikator gibt nur an, dass der gesuchte ausdruck mehrmals hintereinander vorkommen muss. (zumindest in PHP, JS und Flash) gibt er hier aber nur ein Ergebnis dafür zurück. ich weiss nicht, wie ich es besser erklären soll. |
| | |
| | #11 (permalink) |
| wuschelkopp Registriert seit: Aug 2004
Beiträge: 1.468
|
achso nun hab ichs. ich dachte aber, dass es zwar für die große klammer nur ein ergebnis zurückgibt, aber dafür für die darin vorkommenden klammern (klammer innerhalb der klammer) jeweils ein eigenes ergebnis. aber okay, danke, dann hab ichs nun glaub..
__________________ listening to techno & minimal :> |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| frames in Uhrzeit ausdrücken | Babaluba | Flash MX | 7 | 18-08-2006 00:23 |
| Kann man division durch rekursion ausdrücken? | Samuel | Am Rande | 7 | 04-11-2003 17:12 |
| regexp as2 | foobaz | Softwarearchitektur und Entwurfsmuster | 8 | 27-09-2003 07:59 |
| Regexp | beachmeat | PHP und MySQL | 5 | 21-09-2003 18:27 |
| anders ausdrücken? | dreck | ActionScript 1 | 8 | 18-03-2003 15:32 |