RegexMatcher.go :

- Ajoute méthode CreateRegexMatcher, qui crée une instance de RegexMatcher.go et compile le pattern.
- Ajout d'un attribut matcher auquel est attribué le retour de la compilation du pattern
- Implémentation méthode match, vérifie que la donnée reçue en paramètre respecte le pattern compilé et stocké dans la structure
This commit is contained in:
Benjamin Lejeune 2022-02-15 12:09:53 +01:00
parent 4d1fbcb95b
commit 6f097e6642

View File

@ -0,0 +1,23 @@
package protocol
import "regexp"
// CreateRegexMatcher Création d'une instance de RegexMatcher
func CreateRegexMatcher(pattern string) *RegexMatcher {
compile, err := regexp.Compile(pattern)
if err != nil {
return nil
}
return &RegexMatcher{matcher: compile}
}
// RegexMatcher Propose des méthodes relatives au matching de chaine de caractère
type RegexMatcher struct {
matcher *regexp.Regexp
}
// match Permet de vérifier la validité d'une donnée affiliée à un protocole
func (m RegexMatcher) match(data string) bool {
return m.matcher.MatchString(data)
}