En Java, les expressions régulières sont l'une des technologies les plus couramment utilisées et peuvent être utilisées dans presque tous les scénarios de traitement de texte, tels que la recherche, l'extraction, l'analyse, le remplacement de texte, etc. Ses puissantes capacités de correspondance peuvent améliorer considérablement l’efficacité du développement, tout en rendant le code plus concis et plus facile à maintenir. Voici quelques exercices d'expressions régulières en Java pour vous aider à maîtriser l'application des expressions régulières.
Expression régulière : [u4e00-u9fa5]
Explication : La plage de valeurs du code Unicode des caractères chinois va de 4e00 à 9fa5, utilisez donc u4e00-u9fa5 pour faire correspondre les caractères chinois.
Exemple de code :
public static boolean isChinese(String str){ Pattern pattern = Pattern.compile("[\u4e00-\u9fa5]+"); return pattern.matcher(str).matches(); }
Expression régulière : w+([-+.]w+)@w+([-.]w+).w+([-.]w+)*
Explication : Cette expression régulière correspond aux adresses e-mail commençant par n'importe quel caractère alphanumérique, y compris les adresses e-mail courantes, telles que @exemple.com, @exemple.co.uk, etc.
Exemple de code :
public static boolean isEmail(String email){ Pattern pattern = Pattern.compile("\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"); return pattern.matcher(email).matches(); }
Expression régulière : (http|https)://([w-]+.)+[w-]+(/[w-./?%& = ]*)?
Explication : Cette expression régulière correspond aux URL commençant par http ou https, y compris les noms de domaine de premier niveau TLD courants, tels que .com, .cn, .edu, etc.
Exemple de code :
public static boolean isUrl(String url){ Pattern pattern = Pattern.compile("(http|https)://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?"); return pattern.matcher(url).matches(); }
Expression régulière : ^1[3456789]d{9}$
Explication : Cette expression régulière correspond à des numéros de téléphone à 11 chiffres commençant par 1 inclus. Tous les téléphones mobiles chiffres en Chine continentale.
Exemple de code :
public static boolean isPhoneNumber(String phoneNumber){ Pattern pattern = Pattern.compile("^1[3456789]\d{9}$"); return pattern.matcher(phoneNumber).matches(); }
Expression régulière : ^(([01]?d?d|2[0-4]d|25[0-5]).){3} ( [01]?dd|2[0-4]d|25[0-5])$
Explication : Cette expression régulière correspond aux adresses IPv4, y compris toutes les adresses comprises entre 0.0.0.0 et 255.255.255.255.
Exemple de code :
public static boolean isIpAddress(String ipAddress){ Pattern pattern = Pattern.compile("^(([01]?\d\d?|2[0-4]\d|25[0-5])\.){3}([01]?\d\d?|2[0-4]\d|25[0-5])$"); return pattern.matcher(ipAddress).matches(); }
Expression régulière : ^([01]?[0-9]|2[0-3]):[0-5]?[0-9] $
Explication : Cette expression régulière correspond à l'heure de 24 heures, y compris les formats courants tels que 1:00, 02:59, 13:01, etc.
Exemple de code :
public static boolean isTimeFormat(String time){ Pattern pattern = Pattern.compile("^([01]?[0-9]|2[0-3]):[0-5]?[0-9]$"); return pattern.matcher(time).matches(); }
Expression régulière : ^d{4}(-|/)(0?[1-9]|1[0-2])(-|/) ( 12|0?[1-9]|3[01])$
Explication : Cette expression régulière correspond aux dates au format aaaa-MM-jj, y compris les dates courantes telles que le 01/01/2000 et le 31/12/2010. Format.
Exemple de code :
public static boolean isDateFormat(String date){ Pattern pattern = Pattern.compile("^\d{4}(-|/)(0?[1-9]|1[0-2])(-|/)([12][0-9]|0?[1-9]|3[01])$"); return pattern.matcher(date).matches(); }
Résumé :
Les expressions régulières sont largement utilisées en Java. La maîtrise de la syntaxe de base et de l'utilisation courante des expressions régulières peut grandement améliorer l'efficacité et la maintenabilité du code. Les 7 exemples fournis ci-dessus sont des exemples d'expressions régulières couramment utilisés, qui peuvent aider les lecteurs à les utiliser de manière flexible dans le développement quotidien et à améliorer l'efficacité du développement.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!