diff options
author | Karl Williamson <khw@cpan.org> | 2015-02-17 15:03:32 -0700 |
---|---|---|
committer | Karl Williamson <khw@cpan.org> | 2015-02-19 22:55:01 -0700 |
commit | 64935bc6975bb01af403817752e88d6540c8711d (patch) | |
tree | 6a1619ac46d1501a5b296a2b69d9af0b98db8c58 /regnodes.h | |
parent | 0e0b935601a8b7a2c56653412a94a36f986bc34f (diff) | |
download | perl-64935bc6975bb01af403817752e88d6540c8711d.tar.gz |
Add qr/\b{gcb}/
A function implements seeing if the space between any two characters is
a grapheme cluster break. Afer I wrote this, I realized that an array
lookup might be a better implementation, but the deadline for v5.22 was
too close to change it. I did see that my gcc optimized it down to
an array lookup.
This makes the implementation of \X go from being complicated to
trivial.
Diffstat (limited to 'regnodes.h')
-rw-r--r-- | regnodes.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/regnodes.h b/regnodes.h index 439fa8d7b1..144d6f63b5 100644 --- a/regnodes.h +++ b/regnodes.h @@ -19,14 +19,14 @@ #define MEOL 5 /* 0x05 Same, assuming multiline: /$/m */ #define EOS 6 /* 0x06 Match "" at end of string: /\z/ */ #define GPOS 7 /* 0x07 Matches where last m//g left off. */ -#define BOUND 8 /* 0x08 Match "" at any word boundary using native charset rules for non-utf8 */ -#define BOUNDL 9 /* 0x09 Match "" at any locale word boundary */ -#define BOUNDU 10 /* 0x0a Match "" at any word boundary using Unicode rules */ -#define BOUNDA 11 /* 0x0b Match "" at any word boundary using ASCII rules */ -#define NBOUND 12 /* 0x0c Match "" at any word non-boundary using native charset rules for non-utf8 */ -#define NBOUNDL 13 /* 0x0d Match "" at any locale word non-boundary */ -#define NBOUNDU 14 /* 0x0e Match "" at any word non-boundary using Unicode rules */ -#define NBOUNDA 15 /* 0x0f Match "" at any word non-boundary using ASCII rules */ +#define BOUND 8 /* 0x08 Match "" at any word boundary using native charset rules for non-utf8, otherwise Unicode rules */ +#define BOUNDL 9 /* 0x09 Match "" at any boundary of a given type using locale rules */ +#define BOUNDU 10 /* 0x0a Match "" at any boundary of a given type using Unicode rules */ +#define BOUNDA 11 /* 0x0b Match "" at any boundary of a given type using ASCII rules */ +#define NBOUND 12 /* 0x0c Match "" at any word non-boundary using native charset rules for non-utf8, otherwise Unicode rules */ +#define NBOUNDL 13 /* 0x0d Match "" at any boundary of a given type using locale rules */ +#define NBOUNDU 14 /* 0x0e Match "" at any boundary of a given type using using Unicode rules */ +#define NBOUNDA 15 /* 0x0f Match "" at any boundary of a given type using using ASCII rules */ #define REG_ANY 16 /* 0x10 Match any one character (except newline). */ #define SANY 17 /* 0x11 Match any one character. */ #define CANY 18 /* 0x12 Match any one byte. */ |