Regex et résultats étranges
Résolu
Pallas4
-
Pallas4 -
Pallas4 -
Bonjour,
J'ai un problème en PHP
je cherche à faire quelque chose capable de capturer n'importe quel texte.
j'ai pensé à ça :
Si les texte sont sur deux lignes différentes pas de soucis. Mais si c'est
texte blabla bla texte2
il capture
texte]] blabla bla [[texte2
je ne comprends pas comment faire pour que dans un cas comme ça il capture texte et texte2
Quelqu'un aurait une idée ? 'jai fait quoi comme boulette ?
Merci
J'ai un problème en PHP
je cherche à faire quelque chose capable de capturer n'importe quel texte.
j'ai pensé à ça :
preg_match_all('#\[\[(.+)\]\]#', $te2,$match, PREG_SET_ORDER );
Si les texte sont sur deux lignes différentes pas de soucis. Mais si c'est
texte blabla bla texte2
il capture
texte]] blabla bla [[texte2
je ne comprends pas comment faire pour que dans un cas comme ça il capture texte et texte2
Quelqu'un aurait une idée ? 'jai fait quoi comme boulette ?
Merci
A voir également:
- Regex et résultats étranges
- Resultats foot - Télécharger - Vie quotidienne
- Lexer resultats - Télécharger - Sport
- Tubidy rap français résultats 1 - Forum Musique / Radio / Clip
- Archives résultats bac 1999 - Forum Réseaux sociaux
- Résultats loto 5/90 d'aujourd'hui cameroun - Forum Excel
4 réponses
oh oui oo mais je ne comprends pas pourquoi le ? est utile ici. En effet, ça ne veut pas dire que ce qui précède est facultatif ? @_@
(enfin merci beaucoup en tous cas)
(enfin merci beaucoup en tous cas)
J'imagine que tu veux dire [[n'importe quel texte]]
Eh voui, les double crochets ont un sens sur CCM: ils provoquent un "magic link" (recherche automatique sur CCM de l'expression) ;-)
J'ai pas de quoi tester, mais dis moi est ce que ça marche comme ça?
Eh voui, les double crochets ont un sens sur CCM: ils provoquent un "magic link" (recherche automatique sur CCM de l'expression) ;-)
J'ai pas de quoi tester, mais dis moi est ce que ça marche comme ça?
'#\[\[(.+?)\]\]#'
Il ne faut pas prendre ici le ? comme étant un quantificateur isolé qui s'applique sur le +, il faut le prendre en couple avec le +, ça a une signification particulière.
La meilleure explication que j'ai trouvée à ce sujet est en anglais sur le site de python.
La meilleure explication que j'ai trouvée à ce sujet est en anglais sur le site de python.
*?, +?, ?? The '*', '+', and '?' qualifiers are all greedy; they match as much text as possible. Sometimes this behaviour isn’t desired; if the RE <.*> is matched against '<H1>title</H1>', it will match the entire string, and not just '<H1>'. Adding '?' after the qualifier makes it perform the match in non-greedy or minimal fashion; as few characters as possible will be matched. Using .*? in the previous expression will match only '<H1>'.