/[pcre]/code/trunk/pcretest.c
ViewVC logotype

Diff of /code/trunk/pcretest.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 376 by ph10, Sun Mar 1 12:00:59 2009 UTC revision 411 by ph10, Fri Apr 10 15:40:21 2009 UTC
# Line 71  input mode under Windows. */ Line 71  input mode under Windows. */
71  #define INPUT_MODE   "r"  #define INPUT_MODE   "r"
72  #define OUTPUT_MODE  "wb"  #define OUTPUT_MODE  "wb"
73    
74  #define isatty _isatty         /* This is what Windows calls them, I'm told */  #ifndef isatty
75    #define isatty _isatty         /* This is what Windows calls them, I'm told, */
76    #endif                         /* though in some environments they seem to   */
77                                   /* be already defined, hence the #ifndefs.    */
78    #ifndef fileno
79  #define fileno _fileno  #define fileno _fileno
80    #endif
81    
82  #else  #else
83  #include <sys/time.h>          /* These two includes are needed */  #include <sys/time.h>          /* These two includes are needed */
# Line 785  printf("  -dfa     force DFA matching fo Line 790  printf("  -dfa     force DFA matching fo
790  #endif  #endif
791  printf("  -help    show usage information\n");  printf("  -help    show usage information\n");
792  printf("  -i       show information about compiled patterns\n"  printf("  -i       show information about compiled patterns\n"
793           "  -M       find MATCH_LIMIT minimum for each subject\n"
794         "  -m       output memory used information\n"         "  -m       output memory used information\n"
795         "  -o <n>   set size of offsets vector to <n>\n");         "  -o <n>   set size of offsets vector to <n>\n");
796  #if !defined NOPOSIX  #if !defined NOPOSIX
# Line 814  int main(int argc, char **argv) Line 820  int main(int argc, char **argv)
820  FILE *infile = stdin;  FILE *infile = stdin;
821  int options = 0;  int options = 0;
822  int study_options = 0;  int study_options = 0;
823    int default_find_match_limit = FALSE;
824  int op = 1;  int op = 1;
825  int timeit = 0;  int timeit = 0;
826  int timeitm = 0;  int timeitm = 0;
# Line 873  while (argc > 1 && argv[op][0] == '-') Line 880  while (argc > 1 && argv[op][0] == '-')
880    else if (strcmp(argv[op], "-b") == 0) debug = 1;    else if (strcmp(argv[op], "-b") == 0) debug = 1;
881    else if (strcmp(argv[op], "-i") == 0) showinfo = 1;    else if (strcmp(argv[op], "-i") == 0) showinfo = 1;
882    else if (strcmp(argv[op], "-d") == 0) showinfo = debug = 1;    else if (strcmp(argv[op], "-d") == 0) showinfo = debug = 1;
883      else if (strcmp(argv[op], "-M") == 0) default_find_match_limit = TRUE;
884  #if !defined NODFA  #if !defined NODFA
885    else if (strcmp(argv[op], "-dfa") == 0) all_use_dfa = 1;    else if (strcmp(argv[op], "-dfa") == 0) all_use_dfa = 1;
886  #endif  #endif
# Line 925  while (argc > 1 && argv[op][0] == '-') Line 933  while (argc > 1 && argv[op][0] == '-')
933    else if (strcmp(argv[op], "-C") == 0)    else if (strcmp(argv[op], "-C") == 0)
934      {      {
935      int rc;      int rc;
936      unsigned long int lrc;      unsigned long int lrc;
937      printf("PCRE version %s\n", pcre_version());      printf("PCRE version %s\n", pcre_version());
938      printf("Compiled with\n");      printf("Compiled with\n");
939      (void)pcre_config(PCRE_CONFIG_UTF8, &rc);      (void)pcre_config(PCRE_CONFIG_UTF8, &rc);
# Line 933  while (argc > 1 && argv[op][0] == '-') Line 941  while (argc > 1 && argv[op][0] == '-')
941      (void)pcre_config(PCRE_CONFIG_UNICODE_PROPERTIES, &rc);      (void)pcre_config(PCRE_CONFIG_UNICODE_PROPERTIES, &rc);
942      printf("  %sUnicode properties support\n", rc? "" : "No ");      printf("  %sUnicode properties support\n", rc? "" : "No ");
943      (void)pcre_config(PCRE_CONFIG_NEWLINE, &rc);      (void)pcre_config(PCRE_CONFIG_NEWLINE, &rc);
944      printf("  Newline sequence is %s\n", (rc == '\r')? "CR" :      /* Note that these values are always the ASCII values, even
945        (rc == '\n')? "LF" : (rc == ('\r'<<8 | '\n'))? "CRLF" :      in EBCDIC environments. CR is 13 and NL is 10. */
946        printf("  Newline sequence is %s\n", (rc == 13)? "CR" :
947          (rc == 10)? "LF" : (rc == (13<<8 | 10))? "CRLF" :
948        (rc == -2)? "ANYCRLF" :        (rc == -2)? "ANYCRLF" :
949        (rc == -1)? "ANY" : "???");        (rc == -1)? "ANY" : "???");
950      (void)pcre_config(PCRE_CONFIG_BSR, &rc);      (void)pcre_config(PCRE_CONFIG_BSR, &rc);
# Line 1709  while (!done) Line 1719  while (!done)
1719      int callout_data_set = 0;      int callout_data_set = 0;
1720      int count, c;      int count, c;
1721      int copystrings = 0;      int copystrings = 0;
1722      int find_match_limit = 0;      int find_match_limit = default_find_match_limit;
1723      int getstrings = 0;      int getstrings = 0;
1724      int getlist = 0;      int getlist = 0;
1725      int gmatched = 0;      int gmatched = 0;
# Line 2007  while (!done) Line 2017  while (!done)
2017          show_malloc = 1;          show_malloc = 1;
2018          continue;          continue;
2019    
2020            case 'Y':
2021            options |= PCRE_NO_START_OPTIMIZE;
2022            continue;
2023    
2024          case 'Z':          case 'Z':
2025          options |= PCRE_NOTEOL;          options |= PCRE_NOTEOL;
2026          continue;          continue;
# Line 2065  while (!done) Line 2079  while (!done)
2079          pmatch = (regmatch_t *)malloc(sizeof(regmatch_t) * use_size_offsets);          pmatch = (regmatch_t *)malloc(sizeof(regmatch_t) * use_size_offsets);
2080        if ((options & PCRE_NOTBOL) != 0) eflags |= REG_NOTBOL;        if ((options & PCRE_NOTBOL) != 0) eflags |= REG_NOTBOL;
2081        if ((options & PCRE_NOTEOL) != 0) eflags |= REG_NOTEOL;        if ((options & PCRE_NOTEOL) != 0) eflags |= REG_NOTEOL;
2082          if ((options & PCRE_NOTEMPTY) != 0) eflags |= REG_NOTEMPTY;
2083    
2084        rc = regexec(&preg, (const char *)bptr, use_size_offsets, pmatch, eflags);        rc = regexec(&preg, (const char *)bptr, use_size_offsets, pmatch, eflags);
2085    
# Line 2372  while (!done) Line 2387  while (!done)
2387              {              {
2388              int d;              int d;
2389              (void)pcre_config(PCRE_CONFIG_NEWLINE, &d);              (void)pcre_config(PCRE_CONFIG_NEWLINE, &d);
2390              obits = (d == '\r')? PCRE_NEWLINE_CR :              /* Note that these values are always the ASCII ones, even in
2391                      (d == '\n')? PCRE_NEWLINE_LF :              EBCDIC environments. CR = 13, NL = 10. */
2392                      (d == ('\r'<<8 | '\n'))? PCRE_NEWLINE_CRLF :              obits = (d == 13)? PCRE_NEWLINE_CR :
2393                        (d == 10)? PCRE_NEWLINE_LF :
2394                        (d == (13<<8 | 10))? PCRE_NEWLINE_CRLF :
2395                      (d == -2)? PCRE_NEWLINE_ANYCRLF :                      (d == -2)? PCRE_NEWLINE_ANYCRLF :
2396                      (d == -1)? PCRE_NEWLINE_ANY : 0;                      (d == -1)? PCRE_NEWLINE_ANY : 0;
2397              }              }

Legend:
Removed from v.376  
changed lines
  Added in v.411

  ViewVC Help
Powered by ViewVC 1.1.5