Exemple d'expression régulière sensible à la casse - Java
En Java, par défaut, la correspondance des expressions régulières (regex) est sensible à la casse. Pour activer la correspondance insensible à la casse regex, ajoutez le préfixe(?)
ou activez l'indicateur insensible à la casse directement dans lesPattern.compile()
.
Un exemple de modèle regex.
Pattern = Registrar:\\s(.*)
Insensible à la casse, ajoutez le préfixe(?)
.
Pattern = (?)Registrar:\\s(.*)
Insensible à la casse, ajoutez l'indicateur Pattern.CASE_INSENSITIVE.
Pattern.compile("Registrar:\\s(.*)", Pattern.CASE_INSENSITIVE);
1. Exemple RegEx
Exemple d'utilisation de la correspondance insensible à la casse regex pour obtenir les informations «Registrar».
package com.example.regex import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RunExampleTest{ private Pattern registrarPattern = Pattern.compile(REGISTRAR_PATTERN); //alternative /*private Pattern registrarPattern = Pattern.compile(REGISTRAR_PATTERN, Pattern.CASE_INSENSITIVE);*/ private Matcher matcher; private static final String REGISTRAR_PATTERN = "(?)Registrar:\\s(.*)"; public static void main(String[] args) { String data = "Testing... \n" + "Registrar: abc.whois.com\n" + "registrar: 123.whois.com\n" + "end testing"; RunExampleTest obj = new RunExampleTest(); Listlist = obj.getRegistrar(data); System.out.println(list); } private List getRegistrar(String data){ List result = new ArrayList (); matcher = registrarPattern.matcher(data); while (matcher.find()) { result.add(matcher.group(1)); } return result; } }
Sortie
[abc.whois.com, 123.whois.com]
Note
Si le (?) est supprimé, seul le [abc.whois.com] sera renvoyé. (Sensible aux majuscules et minuscules).