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 ::

TYPO3 Kochbuch

TYPO3 Kochbuch 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 Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 05.11.2010, 23:08:42
Time-Over Time-Over ist offline
Anfänger
 
Registriert seit: Apr 2010
Alter: 29
Beiträge: 10
Regexp: Alles ohne ZEICHENKETTE

Moin,
ich versuch jetzt schon seit einigen Stunden eine Regexp für folgenden Fall zu finden:
Code:
/*Group:MyGroupName*/
ganzvieltextmitzeichenaußer*/
/*end*/
Das hab ich jetzt schon geschrieben. Aber es liefert mir keine Ergebnisse.
/Group:(^(?!\\*\\/)+)\\*\\/(^(?!\\/\\*)*)\\/\\*/
Rot: Alles außer */
Blau: Alles außer /*

Ich brauch also MyGroupName und den ganzvieltextmitzeichenaußer*/ in 2 Variablen.
Wie kann ich dieses Problem lösen?

mfg

Time-Over
Mit Zitat antworten
  #2  
Alt 06.11.2010, 01:28:46
Ckaos Ckaos ist offline
Member
 
Registriert seit: Nov 2007
Beiträge: 843
AW: Regexp: Alles ohne ZEICHENKETTE

Hi

Zitat:
Wie kann ich dieses Problem lösen?
/*Gemeinan*/ Mit einer Lösung. /*Gemeinaus*/
Zitat:
/Group:(^(?!\\*\\/)+)\\*\\/(^(?!\\/\\*)*)\\/\\*/
Rot: Alles außer */
Blau: Alles außer /*
Kann ich 0 nachvollziehen wie du dazu kommst, welche Quellen
nutzt du?

Ich könnte dir natürlich den richtigen schreiben, das hat aber
kein Lerneffekt für dich. Also zeige ich dir wie du an solche Aufgaben rangehen kannst.

step by step
1.Du willst alles nach /*Group:
- * ist ein reserviertes Zeichen muss also escaped werden
Dein Regex also
Code:
'~/\*Group:(.*)~s'
Ausgabe:
Code:
Array ( [0] => Array ( [0] => /*Group:MyGroupName*/ ganzvieltextmitzeichenaußer*/ /*end*/ ) [1] => Array ( [0] => MyGroupName*/ ganzvieltextmitzeichenaußer*/ /*end*/ ) )
2.Du willst begrenzen bis */
- an * denken
Code:
'~/\*Group:([^\*/]*)~s'
Ausgabe:
Code:
Array ( [0] => Array ( [0] => /*Group:MyGroupName ) [1] => Array ( [0] => MyGroupName ) )
....nun du nen schritt...dann helf ich wieder ;()

Zwischengedanke: Warum nutze ich ~ als Delimiter?
Weil ich keine Lust habe meinen Delimiter 100mal zu escapen ;)
siehe zu 2. mit / als Delimiter
Code:
/\/\*Group:([^\*\/]*)/s
mfg

CKaos
__________________
"Wenn die Leute Häuser so bauen würden, wie wir Programme schreiben, würde der erstbeste Specht unsere Zivilisation zerhacken."
In den allermeisten Fällen sitzt der Bug etwa 40 cm vor dem Monitor!
Mit Zitat antworten
  #3  
Alt 06.11.2010, 14:24:59
Time-Over Time-Over ist offline
Anfänger
 
Registriert seit: Apr 2010
Alter: 29
Beiträge: 10
AW: Regexp: Alles ohne ZEICHENKETTE

Okay es gibt da nur noch ein kleines Problem bei deinem Ansatz. Einen "funktionierenden" Ansatz mit diesem Problem hatte ich nämlich auch schon. Entschuldige dass ich diesen nicht gleich gepostet habe.

Code:
/Group:([^\\*\\/]+)\\*\\/([^\\/\\*]*)/
Das Problem ist nämlich, dass sowohl bei Klammer 1 als auch bei Klammer 2 keine Zeichen * und / vorkommen dürfen. Aber eigentlich möchte ich ja nur die Zeichenfolge */ bzw /* verbieten. Ich habe im Internet einen Ansatz mit (?!\\*\\/) gefunden, aber der funktioniert nicht. Die Aufgabenstellung ist also
bei Klammer 1: "Alle Zeichen außer Zeichenkette */"
und bei Klammer 2: "Alle Zeichen außer Zeichenkette /*"

Und das ist das Problem für das ich einfach keine Lösung auf die Beine bekomme.
Vielleicht kannst du mir jetzt besser weiterhelfen?

mfg

Time-Over
Mit Zitat antworten
  #4  
Alt 06.11.2010, 17:21:23
Ckaos Ckaos ist offline
Member
 
Registriert seit: Nov 2007
Beiträge: 843
AW: Regexp: Alles ohne ZEICHENKETTE

Hi

Zitat:
Und das ist das Problem für das ich einfach keine Lösung auf die Beine bekomme.
Vielleicht kannst du mir jetzt besser weiterhelfen?
Wie kann ich dir helfen wenn du nichtmal siehst das ich dir schon den
ersten teil vorgeschrieben/gelöst habe. Anscheinend beinhaltet dein
gewünschtes Ergebnis weitere Vorgaben die du hier enthälst.

Vielleicht (mit Glaskugel) bringt dich der Ansatz weiter
PHP-Code:
$str="/*Group:MyGro*u/pName*/
ganzvieltextmitzeichenaußer*/
/*end*/"
;
preg_match_all("/\/\*Group:(.*)\*\//Us",$str,$erg);
print_r($erg); 
mfg

CKaos
__________________
"Wenn die Leute Häuser so bauen würden, wie wir Programme schreiben, würde der erstbeste Specht unsere Zivilisation zerhacken."
In den allermeisten Fällen sitzt der Bug etwa 40 cm vor dem Monitor!
Mit Zitat antworten
  #5  
Alt 06.11.2010, 22:55:31
Time-Over Time-Over ist offline
Anfänger
 
Registriert seit: Apr 2010
Alter: 29
Beiträge: 10
AW: Regexp: Alles ohne ZEICHENKETTE

Abend,
tut mir leid dass ich einige wichtige Punkte vergessen habe. Also nochmal von 0. Ich habe einen string der folgendermaßen aussieht:

/*Group:Nahrung*/
kuchen,eis+apfel*essen
/*Group:Gebäude*/
{ein geb*äude, haus. kirche / bauernhof
/*Group:Bäume*/
eiche/birke&
/*end*/

Ich brauche nun ein Array[count][2] (count in diesem Fall 3)
wobei Array[count][0] den jeweils rot markierten Wert beinhaltet
und Array[count][1] den blau markierten

Dein Ansatz im vorherigen Post bringt mich leider nicht weiter, da er ja dann alle vorherkommenden */ bzw /* mitaufnimmt.


//EDIT:
Okay mit dem /Us hinten gehts =) Danke dir!!! Werd gleich mal googlen was es sich damit auf sich hat. Das kannte ich bisher noch garnicht.
Ansatz:
Code:
"/Group:(.+)\\*\\/(.*)\\/\\*/Us"


-closed-

mfg

Time-Over
Mit Zitat antworten
  #6  
Alt 08.11.2010, 11:12:51
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Regexp: Alles ohne ZEICHENKETTE

Zitat:
Zitat von Time-Over Beitrag anzeigen
Werd gleich mal googlen was es sich damit auf sich hat.
alternativ die forensuche nutzen; zum thema reguläre ausdrücke habe ich schon x-mal tutorials u.ä. verlinkt.

cx
Mit Zitat antworten
  #7  
Alt 08.11.2010, 13:10:44
Time-Over Time-Over ist offline
Anfänger
 
Registriert seit: Apr 2010
Alter: 29
Beiträge: 10
AW: Regexp: Alles ohne ZEICHENKETTE

Zitat:
Zitat von cortex Beitrag anzeigen
alternativ die forensuche nutzen; zum thema reguläre ausdrücke habe ich schon x-mal tutorials u.ä. verlinkt.

cx
Mit den RegExp kenn ich mich ja aus^^ Aber von dem /Us hab ich noch nie was gehört.

mfg

Time-Over
Mit Zitat antworten
  #8  
Alt 08.11.2010, 13:19:59
cortex cortex ist offline
SELFPHP Profi
 
Registriert seit: Apr 2008
Alter: 48
Beiträge: 1.938
AW: Regexp: Alles ohne ZEICHENKETTE

Zitat:
Zitat von Time-Over Beitrag anzeigen
Mit den RegExp kenn ich mich ja aus
dein wort in gottes gehörgang.

cx
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
regexp mrdiablo PHP für Fortgeschrittene und Experten 2 28.05.2007 06:45:58
RegExp werden nicht verarbeitet r0w PHP Grundlagen 1 06.02.2006 10:50:36
Zeichenkette in MySQL-Feld suchen Esnabur PHP Grundlagen 5 15.12.2005 13:06:50
regexp und mysql: escapen von sonderzeichen feuervogel MySQLi/PDO/(MySQL) 3 14.01.2004 22:18:04
RegExp bei URL - Problem bei Zeilenumbruch Schleicher PHP für Fortgeschrittene und Experten 3 09.08.2002 14:28:53


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:38:40 Uhr.


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


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