J'utilise regex en utilisant #include <regex.h>
Si j'ai une chaîne s, comment puis-je utiliser regex pour rechercher un modèle p?Comment extraire des chaînes d'une chaîne C++ en utilisant regex
0
A
Répondre
4
#include <regex.h>
#include <iostream>
#include <string>
std::string
match(const char *string, char *pattern)
{
// Adapted from:
http://pubs.opengroup.org/onlinepubs/009695399/functions/regcomp.html
int status;
regex_t re;
regmatch_t rm;
if (regcomp(&re, pattern, REG_EXTENDED) != 0) {
return "Bad pattern";
}
status = regexec(&re, string, 1, &rm, 0);
regfree(&re);
if (status != 0) {
return "No Match";
}
return std::string(string+rm.rm_so, string+rm.rm_eo);
}
int main(int ac, char **av) {
// e.g. usage: ./program abcdefg 'c.*f'
std::cout << match(av[1], av[2]) << "\n";
}
+0
Est-ce que cela fonctionne en studio visuel? – jjxtra
1
Vérifiez http://msdn.microsoft.com/en-us/library/bb982821.aspx, a détaillé le modèle d'utilisation pour regex. de MS vc blog.
const regex r("[1-9]\\d*x[1-9]\\d*");
for (string s; getline(cin, s);) {
cout << (regex_match(s, r) ? "Yes" : "No") << endl;
}
+3
Qui détaille l'utilisation de '
Questions connexes
- 1. Comment extraire la valeur entre deux chaînes en utilisant regex?
- 2. Comment extraire une chaîne en utilisant C#
- 3. Comment extraire le contenu des crochets dans une chaîne de texte dans C# en utilisant Regex
- 4. Rechercher des chaînes MultiByte en utilisant RegEx
- 5. Comment extraire une chaîne en utilisant Javascript Regex
- 6. Comment extraire une chaîne du chemin en utilisant regex?
- 7. Comment extraire l'heure d'une chaîne en utilisant regex?
- 8. C# et Regex: Comment extraire les chaînes entre guillemets
- 9. Comment extraire un texte en utilisant regex?
- 10. .net en utilisant regex pour extraire un motif d'une chaîne
- 11. Comment puis-je extraire des chaînes d'une chaîne?
- 12. regex conditionnelle pour extraire des chaînes et des numéros d'URI
- 13. Comment extraire cette chaîne de date et le convertir en DateTime en utilisant C# et Regex?
- 14. comment extraire cette regex en utilisant
- 15. Comment extraire un texte en utilisant regex?
- 16. Regex pour chaîne en C#
- 17. Utilisez regex pour trouver et extraire chaînes d'une chaîne
- 18. Vous voulez extraire une chaîne en utilisant regex
- 19. Regex pour chaîne entre 2 chaînes C#
- 20. en utilisant la chaîne expr: regex pour couper les chaînes
- 21. Valider certaines chaînes en utilisant RegEx
- 22. Comment extraire plusieurs modèles dans une chaîne en utilisant regex en Java
- 23. php - Extraction d'entre deux chaînes en utilisant regex
- 24. Regex pour chaîne en utilisant la bibliothèque GNU C regex
- 25. Trouver des nombres dans une chaîne en utilisant C#/Regex
- 26. Ruby regex extraire des mots
- 27. Comment extraire la sous-chaîne en C
- 28. Trouver des chaînes assorties en utilisant Regex dans Javascript?
- 29. Extraire les variables du texte en utilisant RegEx et C#
- 30. comment lire les chaînes en utilisant C#
qui regex.h? Le Unix? Vous devriez mieux le spécifier, puisqu'il ne s'agit pas d'un en-tête C++ ou C standard. –
J'utilise juste celui qui est déjà là, donc le défaut, quel qu'il soit. Je suis dans OSX, qui est fondamentalement le même que Linux. – neuromancer
Quel est votre compilateur et votre système d'exploitation? Quoi qu'il en soit, si vous voulez une compatibilité multiplate-forme et cross-compilateur et une bonne interface OO, je suggère d'essayer Boost.Regex. http://www.boost.org/doc/libs/1_46_1/libs/regex/doc/html/index.html –