Je m'appelle Simon MARTINEZ, je suis actuellement en dernière de mon cursus Master of Science à SUPINFO Lille. Je suis en stage chez WygWam où j'ai intégré le pôle Sharepoint. En savoir plus »
LATEST PROJECT: REGEX Date
REGEX pour une date format DD-MM-YYYY ou DD.MM.YYYY ou DD-MM-YYYY
^(((0[1-9]|[12][0-9]|3[01])([-\.\/])(0[13578]|10|12)([-\.\/])(\d{4}))|(([0][1-9]|[12][0-9]|30)([-\.\/])(0[469]|11)([-\.\/])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-\.\/])(02)([-\.\/])(\d{4}))|((29)(\.|-|\/)(02)([-\.\/])([02468][048]00))|((29)([-\.\/])(02)([-\.\/])([13579][26]00))|((29)([-\.\/])(02)([-\.\/])([0-9][0-9][0][48]))|((29)([-\.\/])(02)([-\.\/])([0-9][0-9][2468][048]))|((29)([-\.\/])(02)([-\.\/])([0-9][0-9][13579][26])))$
A tester sur http://www.rubular.com
Pour un projet personnel, j’ai eu besoin de vérifier l’intégrité des phrases que je générais. J’avais donc besoin de connaître le nombre de Majuscules et de chiffres présents dans mes phrases.
Ma méthode pour compter le nombre d’occurrences dans une chaine
function number_of($regex,$str)
{
$array = preg_split($regex,$str);
return (count($array)-1);
}
Nombre de Majuscules :
echo number_of(« /[A-Z]/ », »Salut, je m’appelle Simon MARTINEZ et j’ai 22 [...]
Voici quelques REGEX que j’ai faite qui pourrait en aider plus d’un. Elle ne sont pas parfaite, mais rien ne vous empêche à me proposer les vôtres.
Pour les URL qui peuvent contenir http https www ou pas :
((http:\/\/|https:\/\/)?(www.)?(([a-zA-Z0-9-]){2,}\.){1,4}([a-zA-Z]){2,6}(\/([a-zA-Z-_\/\.0-9#:?=&;,]*)?)?)
Pour les URL qui doivent contenir soit http ou soit https et peuvent contenir www :
((http:\/\/|https:\/\/)(www.)?(([a-zA-Z0-9-]){2,}\.){1,4}([a-zA-Z]){2,6}(\/([a-zA-Z-_\/\.0-9#:?=&;,]*)?)?)
Pour les URL [...]
3 façons propres de tester si une chaine de caractères est numérique :
1ère méthode
Int32.TryParse(VARIABLE_A_TESTER);
2ème méthode
Une petite regex pour les courageux :
Using System.Text.RegularExpressions
System.Text.RegularExpressions.Regex.IsMatch(VARIABLE_A_TESTER,@ »(^[-+]?\d+(,?\d*)*\.?\d*([Ee][-+]\d*)?$)|(^[-+]?\d?(,?\d*)*\.\d+([Ee][-+]\d*)?$) »);
3ème méthode
Dans la librairie Microsoft.VisualBasic.dll
Microsoft.VisualBasic.Information.IsNumeric(VARIABLE_A_TESTER);
Plus d’information sur http://msdn.microsoft.com/fr-fr/library/microsoft.visualbasic.information.isnumeric.aspx
Compter le nombre d’occurrence dans une chaine en C#, en clair compter le nombre de fois qu’une chaine de caractère (string) est contenu dans une autre chaine de caractère.
int nbOccurrence = Regex.Matches(string_source, string_a_rechercher, RegexOptions.IgnoreCase).Count;
Plus besoin de faire des boucles, cette méthode est propre et en une seule ligne. Que demander de plus ?