SORU
5 Temmuz 2009, Pazar


C düzenli ifadeleri: örnekler?

C. man regex.h ANSI normal ifadeler kullanma örnekleri ve en iyi uygulamalar o kadar yardım sağlamaz bazı basit peşindeyim.

CEVAP
6 Temmuz 2009, PAZARTESİ


Düzenli ifadeler aslında en çok gelen POSIX düzenli ifade Kütüphanesi, söz olabilir gibi geliyor ANSI C parçası (?) değil mi *nixes. Burada an example of using POSIX regexes in C:

#include <regex.h>        
regex_t regex;
int reti;
char msgbuf[100];

/* Compile regular expression */
reti = regcomp(®ex, "^a[[:alnum:]]", 0);
if (reti) {
    fprintf(stderr, "Could not compile regex\n");
    exit(1);
}

/* Execute regular expression */
reti = regexec(®ex, "abc", 0, NULL, 0);
if (!reti) {
    puts("Match");
}
else if (reti == REG_NOMATCH) {
    puts("No match");
}
else {
    regerror(reti, ®ex, msgbuf, sizeof(msgbuf));
    fprintf(stderr, "Regex match failed: %s\n", msgbuf);
    exit(1);
}

/* Free compiled regular expression if you want to use the regex_t again */
regfree(®ex);

Alternatif olarak, olabilir kontrol etmek istiyor PCRE, kitaplığı için Perl-uyumlu düzenli ifadeler C. Perl sözdizimi hemen hemen aynı sözdizimi kullanılan Java, Python, ve birkaç diğer diller. POSIX sözdizimi sözdizimi grep, sed, vı, vb tarafından kullanılır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • habpsu

    habpsu

    25 Temmuz 2007
  • NPR

    NPR

    22 NİSAN 2006
  • super1988guy

    super1988guy

    9 Aralık 2007