Προς το περιεχόμενο

Regular expressions - PHP


mixalis8

Προτεινόμενες αναρτήσεις

Δημοσ.

Λοιπόν....

 

θέλω βοήθεια στην σωστή σύνταξη του preg_match_all

 

Παράδειγμα...

 

$text = <h1 class="node">Text 1</h1> | <h1 class="node">Deutero</h1>

 

πως μπορώ με regular expressions να πάρω τα bold??

 

εγώ δίνω:

preg_match_all('/<h1 class="node">(.*)<\/h1>/', $text, $match, PREG_SET_ORDER);

αλλά αντί να μου δώσει σε array τις τιμές μου δίνει: Text 1</h1> | <h1 class="node">Deutero

 

δηλαδή ενώ βρίσκει την αρχή του.... το τέλος του δεν είναι η πρώτη πιθανή συνάντηση... αλλά η τευταία συνάντηση του </h1>

Δημοσ.

preg_match_all('/<h1 class="node">(.*?)<\/h1>/', $text, $match, PREG_PATTERN_ORDER);

 

το βρήκα τελικά. αντί για PREG_SET_ORDER έβαλα PREG_PATTERN_ORDER

 

---------- Προσθήκη στις 16:10 ---------- Προηγούμενο μήνυμα στις 16:08 ----------

 

απλά αυτό που δεν κατάλαβα είναι γιατί πρέπει να μπεί εκεί το ερωτηματικό....

 

.*? τι σημαίνει αυτό??

Δημοσ.
preg_match_all('/<h1 class="node">(.*?)<\/h1>/', $text, $match, PREG_PATTERN_ORDER);

 

το βρήκα τελικά. αντί για PREG_SET_ORDER έβαλα PREG_PATTERN_ORDER

 

---------- Προσθήκη στις 16:10 ---------- Προηγούμενο μήνυμα στις 16:08 ----------

 

απλά αυτό που δεν κατάλαβα είναι γιατί πρέπει να μπεί εκεί το ερωτηματικό....

 

.*? τι σημαίνει αυτό??

UNIX Wildcards

Δημοσ.
Με το ερωτηματικό σταματάει στο πρώτο match και όχι στο τελευταίο.

 

τώρα εξηγούνται ολα.........

 

ευχαριστώ πάρα πολύ

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...