diff options
author | Ryo Nihei <nihei.dev@gmail.com> | 2021-11-25 23:11:50 +0900 |
---|---|---|
committer | Ryo Nihei <nihei.dev@gmail.com> | 2021-11-25 23:12:02 +0900 |
commit | 10d0c5dfeb9749f4226f86d5ac915718c5bec5c9 (patch) | |
tree | 2fd37aa5233f8195ff8d008d125b51b20f269333 /driver | |
parent | Support Lowercase and Uppercase property (Meet RL1.2 of UTS #18 partially) (diff) | |
download | tre-10d0c5dfeb9749f4226f86d5ac915718c5bec5c9.tar.gz tre-10d0c5dfeb9749f4226f86d5ac915718c5bec5c9.tar.xz |
Make character properties available in an inverse expression (Make [^\p{...}] available)
Diffstat (limited to 'driver')
-rw-r--r-- | driver/lexer_test.go | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/driver/lexer_test.go b/driver/lexer_test.go index 36a3e31..275e992 100644 --- a/driver/lexer_test.go +++ b/driver/lexer_test.go @@ -756,6 +756,22 @@ func TestLexer_Next(t *testing.T) { newEOFTokenDefault(), }, }, + // Character properties are available in a bracket expression. + { + lspec: &spec.LexSpec{ + Name: "test", + Entries: []*spec.LexEntry{ + newLexEntryDefaultNOP("letter", `[\p{Letter}]+`), + newLexEntryDefaultNOP("non_letter", `[^\p{Letter}]+`), + }, + }, + src: `foo123`, + tokens: []*Token{ + newTokenDefault(1, 1, []byte(`foo`)), + newTokenDefault(2, 2, []byte(`123`)), + newEOFTokenDefault(), + }, + }, } for i, tt := range test { for compLv := compiler.CompressionLevelMin; compLv <= compiler.CompressionLevelMax; compLv++ { |