Stehe mit regex auf Kriegsfuss, habe 2h gegogelt und regexr.com probiert, kriegs aber nicht hin... Wie kann ich aus dem Sting irgendwas value="1" irgendwasanderes die 1 extrahieren?
Mit sed und awk kein Problem. Vielleicht solltest Du etwas mehr Kontext liefern, wie Betriebssystem, Sprache und Anforderungen. Grüsse, René
sed:
1 | daniel@Daniels-Surface-Pro-3:~$ echo '<input value="1" />' | sed 's/.*value="\([^"]*\)".*/\1/' |
2 | 1 |
js:
1 | '<input value="1" />'.match(/value="([^"]*)"/)[1] |
Hi, René H. schrieb: > Vielleicht solltest Du etwas mehr Kontext > liefern, ich möchte php benutzen - preg_match_all
Das sicher mit regex zu machen ist fast unmöglich, zumindest wenn du deine Eingabewerte nicht unter Kontrolle hast. Wenn du weist das deine werte wenigstens richtig encodieren, also ein " im wert nicht mit \" sondern mit " kommst du mit: /value=("|')(.*?)\1/m relativ weit. das berücksichtigt auch fälle wie: value='3' wenn du nur value="" in input's haben willst: /<input[^>]+value=("|')(.*?)\1[^>]+>/m wobei ich da ggf. eher /<input[^>]+value=("|')(.*?)\1[^>]+>/mi verwenden würde. bedenke das du das hinterher wahrscheinlich noch durch html_entity_decode() durchschieben willst. Andersrum, was spricht gegen ein DOMDocument und XPath?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.