Textblock - Wort X aus Zeile Y auslesen
Ich habe ein Textfeld aus einer Tabelle auszulesen, komme allerdings hier irgendwie nicht weiter.
Zunächst wurde das wie folgt genutzt:
text = "
Mit nl2br wurde das dann so ausgeben:
So weit, so gut ... funktioniert auch alles.
Jetzt benötige ich aber die PLZ (in diesem Falle 12345), die IMMER in Zeile 5 als Wort 2 zu finden ist, zur weiteren Verwendung in einer separaten Variable.
Leider steh ich hier echt im Moment etwas auf dem Schlauch. Beim googeln komm ich leider auch nicht so recht weiter.
Kann mir jemand einen Tipp geben?
Zunächst wurde das wie folgt genutzt:
text = "
Herr Alfred Mustermann Musterfirma Musterstr. 11 DE 12345 Musterhausen
"Mit nl2br wurde das dann so ausgeben:
HerrAlfred MustermannMusterfirmaMusterstr. 11DE 12345 Musterhausen
So weit, so gut ... funktioniert auch alles.
Jetzt benötige ich aber die PLZ (in diesem Falle 12345), die IMMER in Zeile 5 als Wort 2 zu finden ist, zur weiteren Verwendung in einer separaten Variable.
Leider steh ich hier echt im Moment etwas auf dem Schlauch. Beim googeln komm ich leider auch nicht so recht weiter.
Kann mir jemand einen Tipp geben?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 125905
Url: https://administrator.de/contentid/125905
Ausgedruckt am: 26.11.2024 um 05:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo oliPro,
erst mal auch einen guten Tach....
eventuell könnte dir die Split-Funktion weiter helfen.
Das Leerzeichen wird als solches auch erkannt und es gibt dir die Postleitzahl in deinem Falle aus.
Beispiel in VBS:
Ich nutze kein PHP, es muss aber ziemlich ähnlich dem von VB sein!
Eventuell kannst du meine Anregung in deinen Code einbinden?!
Gruß
Tsuki
erst mal auch einen guten Tach....
eventuell könnte dir die Split-Funktion weiter helfen.
Das Leerzeichen wird als solches auch erkannt und es gibt dir die Postleitzahl in deinem Falle aus.
Beispiel in VBS:
spl = "DE 12345 Musterhausen"
SPL1 = split(SPL," ")
SPL2 = SPL1(1)
msgbox SPL2
Ich nutze kein PHP, es muss aber ziemlich ähnlich dem von VB sein!
Eventuell kannst du meine Anregung in deinen Code einbinden?!
Gruß
Tsuki
Moin, mein Ansatz (aus Perl-Zeiten) wäre: Zuerst das ganze per Preg_split nach dem Return (\n glaub ich) auftrennen. Jetzt habe ich einen Array mit 5 Elementen, jedes Element ist eine Zeile. Also noch Element Nummer 4 mit nem Preg-Split auftrennen -> und schon habe ich einen neuen Array dessen 2tes Element die PLZ ist...
$x = preg_split("/\\n/",$deinText)
$y = preg_split("/ /",$x[3]);
$plz = $y[1];
so in etwa (bin grad beim \n nich sicher ob dass das richtige NL-Zeichen ist)
$x = preg_split("/\\n/",$deinText)
$y = preg_split("/ /",$x[3]);
$plz = $y[1];
so in etwa (bin grad beim \n nich sicher ob dass das richtige NL-Zeichen ist)
@maretz
Es könnte alternativ noch das \n\r sein.
Es könnte alternativ noch das \n\r sein.
$sText = <<<__TEXT__
Herr
Alfred Mustermann
Musterfirma
Musterstr. 11
DE 12345 Musterhausen
__TEXT__;
//
$aAdresse = explode("\n", $sText);
$aPlzOrt = explode(' ', $aAdresse[4]);
// Debug Ausgabe
echo '<pre>'.$aPlzOrt[1].'</pre>';
//
if (preg_match('/^([^\n]*)\n([^\n]*)\n([^\n]*)\n([^\n]*)\n(([A-Z]{2})\ ([0-9]{5})\ (.*))$/', $sText, $aErg)) {
// Debug Ausgabe
echo '<pre>'.print_r($aErg,true).'</pre>';
}
... explode sollte schneller sein als preg_split - ggf. kann man auch gleich die ganze Adresse durch preg_match jagen.