J'écris une méthode pour prendre une chaîne "filtre" DevExpress et la convertir en une chaîne SQL utilisable. Pour la plupart, c'est facile avec de simples substitutions de chaînes ici ou là. Une chose, cependant, m'a gratté la tête parce que je n'ai tout simplement pas pris le temps d'apprendre les expressions régulières en C# /. NET.Comment utiliser l'objet Expression régulière C# pour effectuer cette substitution?
Lorsqu'un nombre décimal est utilisé, DevExpress émet une chaîne comme « FieldName> 2.0m ». Le problème est le signifiant décimal, "m" à la fin du nombre. Je dois prendre toutes les sous-chaînes du format ###. ### m et les changer en ###. ### (où le nombre de chiffres est variable). Si je me souviens bien, correspondant à ce nombre serait quelque chose comme:
[0-9,.]*
Mais comment puis-je recherche un numéro avec le « m » à la fin et comment puis-je utiliser la classe Regex pour générer une nouvelle chaîne avec le m enlevé?
Merci!
Je connais peu regex '.NET': qu'est-ce que' ('' suivi par '(' signifie?) Dans la plupart des saveurs regex je sais, c'est une syntaxe invalide EDIT: ah, vous avez oublié le ':' ... Dans lequel Si vous l'esprit aussi bien le faire: '@ « (. \ d + \ \ d +) m »' –
Ouais, mais je me suis aperçu que je ne l'ai pas besoin du tout –
Eh bien, jamais trop tard pour modifier, droit –