« Programmation Java/Regex » : différence entre les versions
Contenu supprimé Contenu ajouté
→Recherches : Correction, c'est un booléen pour matches() |
→Recherches : Précisions |
||
Ligne 17 :
La classe ''Pattern'' offre la fonction ''matches'' qui renvoie un booléen : true (vrai) si la chaîne complète correspond à l'expression régulière, false (faux) sinon.
<source lang=java>
import java.util.regex.Pattern;
Ligne 35 ⟶ 34 :
*/
</source>
La classe ''Matcher'' permet de trouver les résultats d'un expression avec différentes méthodes :
# ''find()'' : cherche le motif suivant et retourne un booléen indiquant si le motif défini par l'expression régulière a été trouvé.
# ''group()'' :
# ''group(int)'' : retourne le groupe d'index spécifié. Le groupe 0 correspond à la chaîne comlète, les suivants correspondent à la paire de parenthèses capturante dans l'expression régulière.
Afficher ce qui est entre les balises HTML ''b'' :
Ligne 46 ⟶ 45 :
import java.util.regex.Matcher;
public class Regex
{ public static void main(String[] args)
{
String chaine = "Test <b>regex</b> <i>Java</i> pour <b>Wikibooks</b> francophone.";
Pattern p = Pattern.compile("<b>([^<]+)</b>"); // Capture du contenu entre <b> et </b> (groupe 1)
Matcher m = p.matcher(chaine);
while(m.find())
{
System.out.println(m.group());▼
System.out.println(m.group(
▲ System.out.println(m.group(1)); // Le contenu entre <b> et </b>
}
}
|