From 0cf84e1f006988c114bdca36715d3a2c0601a7d5 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Wed, 30 Aug 2017 10:23:06 +0300 Subject: Generalize regex_replace_ex() function --- tests/regex/testscript | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 tests/regex/testscript (limited to 'tests/regex/testscript') diff --git a/tests/regex/testscript b/tests/regex/testscript new file mode 100644 index 0000000..1af604c --- /dev/null +++ b/tests/regex/testscript @@ -0,0 +1,54 @@ +# file : tests/regex/testscript +# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + +: match +: +{ + $* abcbd b x >axcxd : all + $* -ffo abcbd b x >axcbd : first-only + $* -fnc abcbd b x >xx : no-copy + + : ecma-escape + : + { + $* xay a '$b' >'x$by' : none + $* xay a '$' >'x$y' : none-term + $* xay a '$$' >'x$y' : self + $* xay a 'b$&c' >'xbacy' : match + $* xay a 'b$`c' >'xbxcy' : match-precede + $* xay a "b\\\$'c" >'xbycy' : match-follow + + : capture + : + $* abcdefghij '(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)' '$1$10' >aj + } + + : perl-escape + : + { + $* xay a '\b' >'xby' : none + $* xay a '\' >'xy' : none-term + $* xay a '\\' >'x\y' : self + + : capture + : + $* abcdefghij '(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)' '\1\10' >aa0 + + : upper + : + { + $* xay a '\U' >xy : none + $* xay a '\Uvz' >xVZy : repl + $* xay a '\Uv\Ez' >xVzy : end + $* aa a 'v\Uz' >vZvZ : locality + $* xay '(a)' '\U\1' >xAy : capt + $* x-y '(a?)-' '\U\1z' >xZy : capt-empty + $* xay a '\uvz' >xVzy : once + } + + : lower + : + $* xay a '\lVZ' >xvZy + } +} -- cgit v1.1