« 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.
 
Le mot précédant un autre :
<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é.
# ''find()'' : trouve le résultat suivant.
# ''group()'' : afficheretourne lela résultatchaîne trouvée (groupe 0).
# ''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(1)); // Tout le motif
System.out.println(m.group(1)); // Le contenu entre <b> et </b>
}
}