Expression régulière

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Expression régulière

par Calimero » 27 août 2007, 17:06

Ou sinon, quelquechose comme ça :
#<script([^>]*)>#

par kmeleon » 27 août 2007, 16:43

Milles merci, ça marche parfaitement. Le pire c'est que je connaissait ce truc :oops:

par Ryle » 27 août 2007, 16:39

Il te faut utiliser l'option U inverser la tendance à la gourmandise des expressions rationnelles, c'est à dire qu'elles vont prendre par défaut la chaine la plus longue correspondant au pattern. L'option U évite ceci :
#<script (.*)>#U

Expression régulière

par kmeleon » 27 août 2007, 16:34

Salut à tous (et désolé pour ce titre pas très explicite),

J'ai un petit problème avec ce motif tout simple : #<script (.*)># que je souhaite appliquer sur (par exemple) <script type="text/javascript" src="scripts/main.js"></script> avec un preg_match(motif, variable, $matches).
Le print_r($matches) me donne:

Code : Tout sélectionner

Array ( [0] => <script type="text/javascript" src="scripts/main.js"></script> [1] => type="text/javascript" src="scripts/main.js"></script )
Alors que je voudrais uniquement récupérer type="text/javascript" src="scripts/main.js" (pour une fonction d'indentation).

Comment faut-il faire pour s'arrêter au premier ">" ?

Bonne soirée