SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.10.2003, 12:02:43
Wauzy Wauzy ist offline
Anfänger
 
Registriert seit: Sep 2002
Beiträge: 84
Mal wieder ein Problem mit Regulären Ausdrücken.

Hallo,

ich habe einen string der immer in folgendem Format vorliegt!

Zitat:
27 (11-4-12) <====Was auch der INhalt von $cw_daten ist

Ich brauche halt die einzelnen Zahlen in Variabeln, das chreit nach regulären Ausdrücken habe ich mir gedacht, ich habe hier im Forum gesucht und auch viele Leute gefunden die das selbe Leiden haben wie ich, aber auch mit den dazu gehörigen Antworten bekomme ich nur folgendes zusammen gebastelt.

Zitat:
preg_match("#d*(d*-d*-d*-#",$cw_daten,$arr_daten);
echo $arr_daten[0];
echo $arr_daten[1];
echo $arr_daten[2];
echo $arr_daten[3];
Also, ich hab da mal ein paar fragen zu, die Daten aus dem string werden doch dann in dem Array, $arr_daten gespeichert, woher weiß php denn was es wie und wo in das array reinschreiben soll?
Na klar, es durchsucht den string nach dem suchmuster das ich mir zusammen geschuster habe, aber wo sind da die marken, (ab hier ins array packen) (bis hier ins array packen)

Ich habe echt schon viel drüber gelesen aber die wollen nicht recht in meinen Kopf.

Danke schon mal

MFG
Wauzy
Mit Zitat antworten
  #2  
Alt 02.10.2003, 16:04:31
Ben20
Guest
 
Beiträge: n/a
Wenn der String immer in genau dem Muster vorliegt, warum dann regEX?

PHP-Code:
$string "24 (11-4-12)";

$erster_wert substr($string0strpos($string' (') - 2);

$restlichen_werte substr($stringstrpos($string' (') + 2), -1);

$restliche_werte explode('-'$restliche_werte); 
So müsste es hinhauen, evtl. hab ich mich beim +2 und -2 vertan!
Mit Zitat antworten
  #3  
Alt 03.10.2003, 02:06:41
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
Hi @ll

ein Lösungsweg für dein Rex wäre
Code:
(d+) ((d+)-(d+)-(d+))
schaut dann so aus:
PHP-Code:
preg_match('/(d+) ((d+)-(d+)-(d+))/'$text$match); 
Liefert folgendes Array
Code:
Array
(
    [0] => 27 (11-4-12)
    [1] => 27
    [2] => 11
    [3] => 4
    [4] => 12
)
Zur Erklärung
Array[0] beinhaltet alles was gefunden wurde (den gesamten Teil-String).
Array[1 ... 4] die einzelnen Teile des Suchpatters

Wie definierst du einen Teil
alles was du in Klammern setzt ist ein Teil
zb
(d*)
das d bedeutet das es eine Zahl sein muss (0-9)
das Zeichen dahinter gibt an wie oft es vorkommen kann, wenn keines dahinter steht darf es nur einmal vorkommen!

Code:
? ...... genau 1 oder kein Zeichen
* ...... keine oder beliebig viele Zeichen
+ ...... genau ein oder beliebig viele Zeichen
{x} .... genau x mal
{x,y} .. mindestens x, aber maximal y Zeichen
{x,} ... mindestens x, oder mehr

wenn du noch mehr erklärungen brauchst, melde dich einfach


@Ben20
Die Idee, ist nicht schlecht, aber etwas umständlich.
Zusätzlich ist hier der Rex schneller

Weiters ist so, das du bei dieser Lösung, den ersten Wert direkt hast und die restlichen in einem Array.

Andere Idee:
PHP-Code:
$my_str     "27 (11-4-12)";

$my_str     str_replace(")","",str_replace(" (","-",$my_str));

$my_str_arr explode("-",$my_str);

print_r($my_str_arr); 
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:34:37 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt