Tutoriel d'exemple d'expression régulière Java
L'expression régulière (expression régulière) est un outil puissant pour faire correspondre des chaînes. Il peut rapidement rechercher, faire correspondre et remplacer, extraire et d'autres opérations. Dans le développement Java, les expressions régulières sont largement utilisées dans le traitement des chaînes, la validation des formulaires, l'extraction de données et d'autres domaines.
Cet article vous amènera à comprendre l'utilisation des expressions régulières en Java à travers quelques exemples de code spécifiques.
Tout d'abord, regardons un exemple simple pour déterminer si une chaîne est conforme aux règles des expressions régulières. Le code suivant montre comment utiliser des expressions régulières en Java pour faire correspondre le jugement :
import java.util.regex.Pattern; import java.util.regex.Matcher; public class RegexExample { public static void main(String[] args) { String regex = "\d+"; // 匹配数字的正则表达式 String text = "12345"; // 使用Pattern类和Matcher类进行匹配判断 Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(text); if (matcher.matches()) { System.out.println("字符串匹配成功"); } else { System.out.println("字符串匹配失败"); } } }
Le code ci-dessus définit d'abord une expression régulière d+
qui correspond aux nombres, puis utilise le compile est compilée dans un objet Pattern. Ensuite, créez un objet Matcher via l'objet Pattern et utilisez la méthode <code>matches
pour déterminer la correspondance. Si la correspondance est réussie, imprimez "Correspondance de chaîne réussie", sinon imprimez "Échec de la correspondance de chaîne". d+
,然后使用Pattern类的compile
方法编译成Pattern对象。接着,通过Pattern对象创建Matcher对象,并使用matches
方法进行匹配判断。如果匹配成功,打印“字符串匹配成功”,否则打印“字符串匹配失败”。
除了判断是否匹配,正则表达式还可以用于查找与提取符合规则的子字符串。以下代码演示了如何使用正则表达式在文本中查找与提取URL链接:
import java.util.regex.Pattern; import java.util.regex.Matcher; import java.util.List; import java.util.ArrayList; public class RegexExample { public static void main(String[] args) { String regex = "https?://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?"; // 匹配URL链接的正则表达式 String text = "Visit my website at https://www.example.com"; // 使用Pattern类和Matcher类进行查找和提取 Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(text); List<String> urls = new ArrayList<>(); while (matcher.find()) { String url = matcher.group(); urls.add(url); } System.out.println("找到以下URL链接:"); for (String url : urls) { System.out.println(url); } } }
以上代码使用了一个匹配URL链接的正则表达式 https?://([w-]+.)+[w-]+(/[w-./?%&=]*)?
,然后使用Matcher类的find
方法查找与提取符合正则表达式的子字符串。每次找到匹配的子字符串后,将其添加到列表中,最后打印出所有找到的URL链接。
除了查找与提取,正则表达式还可以用于替换和分割字符串。以下代码演示了如何使用正则表达式替换文本中的敏感词,并使用正则表达式分割句子:
import java.util.regex.Pattern; public class RegexExample { public static void main(String[] args) { String regex = "badword1|badword2"; // 匹配敏感词的正则表达式 String text = "This is a badword1 and badword2 example"; // 使用正则表达式进行替换 String replacedText = text.replaceAll(regex, "***"); System.out.println("替换后的文本:" + replacedText); // 使用正则表达式进行分割 String[] sentences = text.split("[.!?]"); System.out.println("分割后的句子:"); for (String sentence : sentences) { System.out.println(sentence.trim()); } } }
以上代码首先定义了一个匹配敏感词的正则表达式 badword1|badword2
,然后使用replaceAll
方法进行替换操作。将文本中的敏感词替换为***
,并打印替换后的文本。
接着,使用split
方法和正则表达式 [.!?]
https?://([w-]+.)+ [ w-]+(/[w-./?%&=]*)?
, puis utilisez la méthode find
de la classe Matcher pour rechercher et extraire les sous-chaînes qui correspondent au standard expression . Chaque fois qu'une sous-chaîne correspondante est trouvée, elle est ajoutée à la liste et enfin toutes les URL trouvées sont imprimées. 🎜badword1|badword2
, et utilisez ensuite la méthode replaceAll
pour effectuer l'opération de remplacement. Remplacez les mots sensibles dans le texte par ***
et imprimez le texte remplacé. 🎜🎜Ensuite, utilisez la méthode split
et l'expression régulière [.!?]
pour effectuer l'opération de fractionnement, divisez le texte en plusieurs phrases en fonction des signes de ponctuation et imprimez chaque phrase . 🎜🎜Ce qui précède est un exemple de didacticiel sur les expressions régulières Java. À travers des exemples de code spécifiques, il présente l'utilisation de base des expressions régulières. J'espère qu'il aidera tout le monde à comprendre et à maîtriser l'application des expressions régulières dans le développement Java. 🎜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!