Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Textblock - Wort X aus Zeile Y auslesen

Frage Entwicklung PHP

Mitglied: oliPro

oliPro (Level 1) - Jetzt verbinden

27.09.2009, aktualisiert 02.10.2009, 3708 Aufrufe, 6 Kommentare

Ich habe ein Textfeld aus einer Tabelle auszulesen, komme allerdings hier irgendwie nicht weiter.

Zunächst wurde das wie folgt genutzt:

text = "Herr Alfred Mustermann Musterfirma Musterstr. 11 DE 12345 Musterhausen"

Mit nl2br wurde das dann so ausgeben:


Herr
Alfred Mustermann
Musterfirma
Musterstr. 11
DE 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?
Mitglied: filippg
28.09.2009 um 02:54 Uhr
Hallo,

ein Ansatz, der mir einfällt wäre ein doppelter explode(). Erst nach Zeilenumbruch (damit bekommst du die 5. Zeile), dann nach Leerzeichen (damit bekommst du in der 5. Zeile das 2. Wort).

Gruß

Filipp
Bitte warten ..
Mitglied: TsukiSan
28.09.2009 um 05:57 Uhr
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:
01.
spl = "DE 12345 Musterhausen" 
02.
SPL1 = split(SPL," ") 
03.
SPL2 = SPL1(1) 
04.
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
Bitte warten ..
Mitglied: maretz
28.09.2009 um 06:57 Uhr
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)
Bitte warten ..
Mitglied: godlie
28.09.2009 um 07:33 Uhr
@maretz
Es könnte alternativ noch das \n\r sein.
Bitte warten ..
Mitglied: nxclass
28.09.2009 um 08:39 Uhr
01.
$sText = <<<__TEXT__ 
02.
Herr 
03.
Alfred Mustermann 
04.
Musterfirma 
05.
Musterstr. 11 
06.
DE 12345 Musterhausen 
07.
__TEXT__; 
08.
 
09.
// 
10.
$aAdresse = explode("\n", $sText); 
11.
$aPlzOrt = explode(' ', $aAdresse[4]); 
12.
// Debug Ausgabe 
13.
echo '<pre>'.$aPlzOrt[1].'</pre>'; 
14.
 
15.
// 
16.
if (preg_match('/^([^\n]*)\n([^\n]*)\n([^\n]*)\n([^\n]*)\n(([A-Z]{2})\ ([0-9]{5})\ (.*))$/', $sText, $aErg)) { 
17.
     // Debug Ausgabe 
18.
    echo '<pre>'.print_r($aErg,true).'</pre>'; 
19.
}
... explode sollte schneller sein als preg_split - ggf. kann man auch gleich die ganze Adresse durch preg_match jagen.
Bitte warten ..
Mitglied: oliPro
30.09.2009 um 11:57 Uhr
Viiiieeeelen Dank!
Funktioniert einwandfrei!
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Installation
gelöst Mit Powershell in einer Datei eine Zeile auslesen (6)

Frage von Bommi1961 zum Thema Installation ...

Batch & Shell
gelöst Powershell funktioniert nicht richtig beim Auslesen der letzten Zeile (5)

Frage von Peter32 zum Thema Batch & Shell ...

VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...