1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
#!/usr/bin/perl
###########################################################-*-mode:cperl-*-
## ##
## Cepstral, LLC ##
## Copyright (c) 2001 ##
## All Rights Reserved. ##
## ##
## Permission is hereby granted, free of charge, to use and distribute ##
## this software and its documentation without restriction, including ##
## without limitation the rights to use, copy, modify, merge, publish, ##
## distribute, sublicense, and/or sell copies of this work, and to ##
## permit persons to whom this work is furnished to do so, subject to ##
## the following conditions: ##
## 1. The code must retain the above copyright notice, this list of ##
## conditions and the following disclaimer. ##
## 2. Any modifications must be clearly marked as such. ##
## 3. Original authors' names are not deleted. ##
## 4. The authors' names are not used to endorse or promote products ##
## derived from this software without specific prior written ##
## permission. ##
## ##
## CEPSTRAL, LLC AND THE CONTRIBUTORS TO THIS WORK DISCLAIM ALL ##
## WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED ##
## WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ##
## CEPSTRAL, LLC NOR THE CONTRIBUTORS BE LIABLE FOR ANY SPECIAL, ##
## INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER ##
## RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION ##
## OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR ##
## IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ##
## ##
###########################################################################
## ##
## Output compiled regexes for us_text.c ##
## ##
###########################################################################
%RXS = (
ordinal_number => "[0-9][0-9,]*\\(th\\|TH\\|st\\|ST\\|nd\\|ND\\|rd\\|RD\\)",
hasvowel => ".*[aeiouAEIOU].*",
usmoney => "\\\$[0-9,]+\\(\\.[0-9]+\\)?",
illion => ".*illion",
romannums => "\\(II?I?\\|IV\\|VI?I?I?\\|IX\\|X[VIX]*\\)",
drst => "\\([dD][Rr]\\|[Ss][tT]\\)",
numess => "[0-9]+s",
sevenphonenumber => "[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]",
fourdigits => "[0-9][0-9][0-9][0-9]",
threedigits => "[0-9][0-9][0-9]",
);
while (my ($n, $r) = each %RXS) {
system './regexcomp', $n, $r;
}
foreach my $n (keys %RXS) {
print "const cst_regex *$n = &${n}_rx;\n";
}
|