Je suis un utilisateur Java mais je suis nouveau pour les expressions régulières. Je veux juste avoir une expression minuscule qui, étant donné un mot (nous supposons que la chaîne est un seul mot), répond par un booléen, indiquant si le mot est valide ou non.Expression régulière correspondant à "mots du dictionnaire"
Un exemple ... Je veux attraper tous les mots qui sont plausibles pour être dans un dictionnaire ... Donc, je veux juste des mots avec des caractères de AZ AZ, un trait d'union (par exemple: man-in-the - milieu) et une apostrophe (comme je vais ou Tiffany).
mots valides:
"food"
"RocKet"
"man-in-the-middle"
"kahsdkjhsakdhakjsd"
"JESUS"
, etc.
mots non valides :
"gipsy76"
"www.google.com"
"[email protected]"
"745474"
"+-x/"
, etc.
J'utilise ce code, mais il ne sera pas donné la bonne réponse:
Pattern p = Pattern.compile("[A-Za-z&-&']");
Matcher m = p.matcher(s);
System.out.println(m.matches());
Quel est le problème avec mon regex?
est-il pas un peu naïf (peut-être même blasé) de supposer que les mots contiennent uniquement des lettres ASCII? –
dépend de la langue (Celui qu'il speeks, pas de codes) :) Et je pense, aussi longtemps que vous codez juste pour le plaisir, il n'y a pas de problème. – Sibbo
Area-51? Deadmau5? – fredley