/-- This is a specialized test for checking, when PCRE is compiled with the
EBCDIC option but in an ASCII environment, that newline and white space
functionality is working. It catches cases where explicit values such as 0x0a
have been used instead of names like CHAR_LF. Needless to say, it is not a
genuine EBCDIC test! In patterns, alphabetic characters that follow a backslash
must be in EBCDIC code. In data, newlines and other spacing characters must be
in EBCDIC, but can be specified as escapes. --/
/-- Test default newline and variations --/
/^A/m
ABC
12\x15ABC
/^A/m<any>
12\x15ABC
12\x0dABC
12\x0d\x15ABC
12\x25ABC
/^A/m<anycrlf>
12\x15ABC
12\x0dABC
12\x0d\x15ABC
** Fail
12\x25ABC
/-- Test \h --/
/^A\ˆ/
A B
/-- Test \H --/
/^A\È/
AB
** Fail
A B
/-- Test \R --/
/^A\Ù/
A\x15B
A\x0dB
A\x25B
A\x0bB
A\x0cB
** Fail
A B
/-- Test \v --/
/^A\¥/
A\x15B
A\x0dB
A\x25B
A\x0bB
A\x0cB
** Fail
A B
/-- Test \V --/
/^A\å/
A B
** Fail
A\x15B
A\x0dB
A\x25B
A\x0bB
A\x0cB
/-- For repeated items, use an atomic group so that the output is the same
for DFA matching (otherwise it may show multiple matches). --/
/-- Test \h+ --/
/^A(?>\ˆ+)/
A B
/-- Test \H+ --/
/^A(?>\È+)/
AB
** Fail
A B
/-- Test \R+ --/
/^A(?>\Ù+)/
A\x15B
A\x0dB
A\x25B
A\x0bB
A\x0cB
** Fail
A B
/-- Test \v+ --/
/^A(?>\¥+)/
A\x15B
A\x0dB
A\x25B
A\x0bB
A\x0cB
** Fail
A B
/-- Test \V+ --/
/^A(?>\å+)/
A B
** Fail
A\x15B
A\x0dB
A\x25B
A\x0bB
A\x0cB
/-- End --/
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>