php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 20-09-2003, 21:01
burzum
 Registrierter Benutzer
Links : Onlinestatus : burzum ist offline
Registriert seit: Oct 2002
Beiträge: 210
burzum ist zur Zeit noch ein unbeschriebenes Blatt
Question was mach ich falsch !?

Ich krieg bei dem Code hier immer nur ein leeres Array ausgegeben
Zwar scheint er die 2 Werte zu finden aber nicht in das Array einzufügen. Wieso !?

Array
(
[0] =>
[1] =>
)
1

PHP-Code:
<?
$text 
"blah blah blah {test} bjsdfhsdg xcvxbxcb {xy}";
preg_match("{(.*?)}",$text,$found);
$test print_r($found);
echo 
$test;
?>
Mit Zitat antworten
  #2 (permalink)  
Alt 20-09-2003, 21:05
Troublegum
 PHP Senior
Links : Onlinestatus : Troublegum ist offline
Registriert seit: Dec 2001
Beiträge: 1.302
Troublegum ist zur Zeit noch ein unbeschriebenes Blatt
Standard

1) print_r() gibt nur einen boolean Wert zurück, den brauchst du nicht auszuprinten.

2) Ich nehme mal an, du willst die Werte in den geschweiften Klammern herausfischen ({ ... }). Dann fehlt deinem regulären Ausdruck aber ein Delimiter.

=>
PHP-Code:
$text "blah blah blah {test} bjsdfhsdg xcvxbxcb {xy}";
preg_match_all("/{(.*)}/"$text$found);
print_r($found); 
__________________
"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"
"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "
"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."

© Harald Schmidt
Mit Zitat antworten
  #3 (permalink)  
Alt 20-09-2003, 22:20
burzum
 Registrierter Benutzer
Links : Onlinestatus : burzum ist offline
Registriert seit: Oct 2002
Beiträge: 210
burzum ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn ich das nun so mache :
preg_match_all("/{(.*)}/", $text, $found);

Krieg ich das raus
Array
(
[0] => Array
(
[0] => {test} bjsdfhsdg xcvxbxcb {xy}
)

[1] => Array
(
[0] => test} bjsdfhsdg xcvxbxcb {xy
)

)

{{ }} scheinbar nimmt er die äußeren beiden Klammen für eine, ist es möglich dem Script das abzugewöhnen ?
Ich möchte ja immer nur die einzelnen Stückchen {text} und {xy}
und nicht {text........xy}.
Mit Zitat antworten
  #4 (permalink)  
Alt 21-09-2003, 00:16
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von burzum
{{ }} scheinbar nimmt er die äußeren beiden Klammen für eine, ist es möglich dem Script das abzugewöhnen ?
ja, reguläre ausdrücke sind greedy, gierig - sie versuchen immer so viel zu erwischen, wie möglich.

es gibt aber eine möglichkeit, ihnen das abzugewöhnen, das fragezeichen dient dazu in anderer verwendung glaube ich. es gibt hier unter den tutorials eines zu regex, schau dort nach, dort wird's erklärt ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 21-09-2003, 01:48
Troublegum
 PHP Senior
Links : Onlinestatus : Troublegum ist offline
Registriert seit: Dec 2001
Beiträge: 1.302
Troublegum ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Du hast zwei Möglichkeiten.
1) den U Modifier: preg_match_all("/{(.*)}/U", $text, $found);

2) das Suchpattern zu verändern: preg_match_all("/{([^}]*)}/", $text, $found);


beides sollte funktionieren; ich würde aber die erste Lösung bevorzugen.
__________________
"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"
"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "
"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."

© Harald Schmidt
Mit Zitat antworten
Antwort

Lesezeichen


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

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

jqPlot jQuery Plotting Plugin ansehen jqPlot jQuery Plotting Plugin

jqPlot ist ein plotting und charting plugin für das jQuery Javascript framework

06.11.2019 Berni | Kategorie: AJAX/ Framework
WYSIWYG Editor

WYSIWYG Editor zum Einbinden in PHP Scripte.

21.10.2019 Stephan_1972 | Kategorie: PHP/ WYSIWYG
Modelmanager

Der Modelmanager ist ein Webtool für Fotografen, kann als komplette Homepage oder als Webtool installiert werden.

10.10.2019 Stephan_1972 | Kategorie: PHP/ Bilder
 Alle PHP Scripte anzeigen

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