Maison > Article > développement back-end > Tutoriel vidéo sur les expressions régulières de l'éducation booléenne
En utilisant des expressions régulières pour représenter les paramètres de recherche de texte, vous pouvez intelligemment compléter certaines correspondances de chaînes à changement dynamique, telles que le changement d'heure. Par conséquent, nous avons rassemblé le « Tutoriel vidéo sur les expressions régulières de l'éducation booléenne », dans l'espoir d'aider tout le monde à mieux comprendre les expressions régulières.
Adresse de lecture du cours : http://www.php .cn/course/281.html
Le style d'enseignement de l'enseignant :
Enseignant Les cours sont simples et approfondis, de structure claire, analysés couche par couche, imbriqués, rigoureux dans l'argumentation et rigoureux dans la structure. Nous utilisons le pouvoir logique de la pensée pour attirer l'attention des étudiants et utilisons la raison pour contrôler l'enseignement en classe. processus. En écoutant les cours des enseignants, les étudiants non seulement acquièrent des connaissances, mais reçoivent également une formation à la réflexion, et sont également influencés et influencés par l'attitude académique rigoureuse des enseignants.
Le point le plus difficile dans cette vidéo est gourmand et non gourmand :
1. dans les expressions régulières ? Correspondance gourmande
Par exemple :
String str="abcaxc"; Patter p="ab*c";
Correspondance gourmande : Les expressions régulières ont généralement tendance à correspondre à la longueur maximale, ce qu'on appelle la correspondance gourmande. Par exemple, si le modèle p est utilisé pour correspondre à la chaîne str, le résultat est : abcaxc(ab*c).
Correspondance non gourmande : faites simplement correspondre le résultat avec le moins de caractères correspondants possible. Par exemple, si le modèle p est utilisé pour correspondre à la chaîne str, le résultat est : abc(ab*c).
2. Comment distinguer les deux modes en programmation
La valeur par défaut est le mode gourmand ; ajouter un point d'interrogation directement après le quantificateur ? C'est un mode non gourmand.
Quantificateurs : {m,n} : m à n
* : n'importe quel nombre de
+ : un à plusieurs
? : 0 ou un
3. L'exemple de programme
utilise les règles Snort pour utiliser une partie d'une règle comme texte correspondant pour correspondre à la partie du contenu.
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegularTest { public static void main(String[] arg){ String text="(content:\"rcpt to root\";pcre:\"word\";)"; String rule1="content:\".+\""; //贪婪模式 String rule2="content:\".+?\""; //非贪婪模式 System.out.println("文本:"+text); System.out.println("贪婪模式:"+rule1); Pattern p1 =Pattern.compile(rule1); Matcher m1 = p1.matcher(text); while(m1.find()){ System.out.println("匹配结果:"+m1.group(0)); } System.out.println("非贪婪模式:"+rule2); Pattern p2 =Pattern.compile(rule2); Matcher m2 = p2.matcher(text); while(m2.find()){ System.out.println("匹配结果:"+m2.group(0)); } } }
Ici, nous vous recommandons également de télécharger les ressources du code source : http://www.php.cn /xiazai /code/2132
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!