php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.10.2011, 13:24  
Neuer Benutzer
 
Registriert seit: 22.09.2011
Beiträge: 23
PHP-Kenntnisse:
Fortgeschritten
jclux befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] regex-Ausdruck um String auslesen

Hallo,

hier eine Frage an alle regex-Profis. Ich habe einen String, der nach einem bestimmten Parameter durchsucht wird, und der ausgelesen werden soll:

EIn Teil des Strings lautet z.B.:

PHP-Code:
define('Wert 1'FALSE
oder aber auch

PHP-Code:
define('Wert 2'"ah3dsjd"); 
Ich möchte mit einer regex nur die Werte herausfiltern, also FALSE und ah3dsjd. Ich habe eine regex entworfen, die mir die Werte liefert, aber im zweiten Fall mit Anführungszeichen. Ich brauche Sie aber ohne Anführungszeichen (ohne dass ich sie danach noch mit einem replace-Befehl entferne, weil ich Änderungen später im String auch wieder richtig setzen will..

Variante 1: Bringt den zweiten Wert mit Anführungszeichen
========
PHP-Code:
preg_match('/[\s](.+?)[\)]/',$result[0],$parsedvalue);
        return 
$parsedvalue[1]; 
Variante 1: Funktioniert nicht auf dem zweiten Wert
========
PHP-Code:
preg_match('/[“\s](.+?)[“\)]/',$result[0],$parsedvalue);
        return 
$parsedvalue[1]; 
Wer kann mir helfen?

JCLUX
jclux ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.10.2011, 14:25  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Achtung:
Code:
“ != "
Ich weiß zwar nicht was du vorhast aber ist dir klar, dass du so "FALSE" und FALSE nicht mehr unterscheiden kannst?
fab ist offline   Mit Zitat antworten
Alt 06.10.2011, 14:45  
Neuer Benutzer
 
Registriert seit: 22.09.2011
Beiträge: 23
PHP-Kenntnisse:
Fortgeschritten
jclux befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von fab Beitrag anzeigen
Achtung:
Code:
“ != "
Ich weiß zwar nicht was du vorhast aber ist dir klar, dass du so "FALSE" und FALSE nicht mehr unterscheiden kannst?
Ja, das ist mir klar..aber in meinem Fall nicht relevant.

Die Anführungszeichen in meinem Programmcode sind richtig. Ich weiß jetzt nicht warum sie hier im Forum falsch dargestellt werden.
jclux ist offline   Mit Zitat antworten
Alt 06.10.2011, 15:00  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Okay, ich habs mal getestet. "funktioniert nicht" äußert sich so (diese Information mitzuliefern wäre eigentlich dein Job gewesen):
PHP-Code:
<?php
$result
[0] = 'define(\'Wert 2\', "ah3dsjd");';
preg_match('/["\s](.+?)["\)]/',$result[0],$parsedvalue);
var_dump($parsedvalue);
?>
array(2) {
  [0]=>
  string(6) " 2', ""
  [1]=>
  string(4) "2', "
}
Klar, dein Pattern sagt schließlich auch nur aus was die zwei umschließenden Zeichen sind bzw. fängt beim ersten whitespace an zu matchen. Wenn du andere Einschränkungen willst, musst du sie auch angeben. Wie wäre es geradeheraus:

Code:
/define\(\'\w+\'\, "?(.+?)"?);/
fab ist offline   Mit Zitat antworten
Alt 06.10.2011, 15:39  
Erfahrener Benutzer
 
Benutzerbild von jspit
 
Registriert seit: 19.08.2011
Beiträge: 701
PHP-Kenntnisse:
Anfänger
jspit wird schon bald berühmt werden
Standard

Sollte Werte hinter dem Komma mit " und ' und ohne greifen:
Code:
/define.*?,\W*([^ \"\'\)]*)\W*/
jspit ist offline   Mit Zitat antworten
Alt 06.10.2011, 15:40  
Neuer Benutzer
 
Registriert seit: 22.09.2011
Beiträge: 23
PHP-Kenntnisse:
Fortgeschritten
jclux befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von fab Beitrag anzeigen

Code:
/define\(\'\w+\'\, "?(.+?)"?);/
Vielen Dank, musste nur noch die schließende Klammer quoten, dann hat es funktioniert.

Bitte entschuldige mein Versäumnis bei der Vollständigkeit meiner Angaben, bin noch neu hier im Forum und habe die Ankündigung "Wer darf hier posten" zu spät gelesen. Asche über mein Haupt. Ich gelobe aber Besserung.

Danke

JCLUX
jclux ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] String Teile mit und ohne Regex 3logy PHP Einsteiger 1 25.02.2011 20:49
Knoten im Kopf, aus mehrdim. Array INSERT .. VALUES (..), (..) machen Chriz PHP Einsteiger 11 21.01.2011 15:55
1-Unendlichen String mit RegEx parsen Lapayo PHP Einsteiger 11 15.01.2011 19:38
Sphider Umlaute und MySQL Fehler xnic Datenbanken 2 03.08.2010 20:10
[Erledigt] Exchange 2007 KalenderItems tarian PHP-Fortgeschrittene 1 26.05.2010 10:23
Ini Daten auslesen ohne INI Datei, Daten aus einem String jackie1983 PHP Tipps 2009 3 03.12.2009 18:06
[Erledigt] String in eckigen Klammern auslesen Daniel PHP Tipps 2009 5 26.01.2009 23:14
[Erledigt] RegEx: beliebige HTML Tags in String ersetzen Der Blaue Gott Balmung PHP Tipps 2008 8 13.09.2008 18:01
PHP5 SOAP - Problem mit Arrays Calexico PHP-Fortgeschrittene 0 11.09.2008 12:06
Regex: Auslesen der Meta-Tags einer Webseite Sucheingrenzung pepe24 PHP Tipps 2008 12 31.05.2008 15:41
Event abfangen Ambience JavaScript, Ajax und mehr 4 30.08.2007 14:36
preg_split erzeugt leeren String || regex Schaelle PHP Tipps 2005 2 27.04.2005 18:35
bestimmten string aus spalte auslesen aircrash PHP Tipps 2005 3 01.02.2005 18:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
regex nur string, ausdruck aus string extrahieren, regex zwischen anführungszeichen, php string klammern auslesen, regex php wert auslesen, feldlänge regex anführungszeichen, reqexp string auslesen, regex ein wort auslesen, regex anführungszeichen, regexpr string in anführungszeichen extrahieren, php string auslesen ohne anfang, string auslesen php regex, string zwischen anführungszeichen aus string extrahieren php, wert mit regex auslesen, regex länge einer zeichenkette auslesen, regex string auslesen, regex ausdrücke innerhalb anführungszeichen, regex wort aus string extrahieren

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:10 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum