diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2016-09-18 12:42:15 +0200 |
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2016-11-02 15:12:04 +0100 |
| commit | 44861dcbfeee041223c4aac1ee075e92fa4daa01 (patch) | |
| tree | 6dfdfd9637846a7aedd71ace97d7d2ad366496d7 /eigen/cmake/RegexUtils.cmake | |
| parent | f3fe458b9e0a29a99a39d47d9a76dc18964b6fec (diff) | |
update
Diffstat (limited to 'eigen/cmake/RegexUtils.cmake')
| -rw-r--r-- | eigen/cmake/RegexUtils.cmake | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/eigen/cmake/RegexUtils.cmake b/eigen/cmake/RegexUtils.cmake new file mode 100644 index 0000000..b59dfc3 --- /dev/null +++ b/eigen/cmake/RegexUtils.cmake @@ -0,0 +1,19 @@ +function(escape_string_as_regex _str_out _str_in) + STRING(REGEX REPLACE "\\\\" "\\\\\\\\" FILETEST2 "${_str_in}") + STRING(REGEX REPLACE "([.$+*?|-])" "\\\\\\1" FILETEST2 "${FILETEST2}") + STRING(REGEX REPLACE "\\^" "\\\\^" FILETEST2 "${FILETEST2}") + STRING(REGEX REPLACE "\\(" "\\\\(" FILETEST2 "${FILETEST2}") + STRING(REGEX REPLACE "\\)" "\\\\)" FILETEST2 "${FILETEST2}") + STRING(REGEX REPLACE "\\[" "\\\\[" FILETEST2 "${FILETEST2}") + STRING(REGEX REPLACE "\\]" "\\\\]" FILETEST2 "${FILETEST2}") + SET(${_str_out} "${FILETEST2}" PARENT_SCOPE) +endfunction() + +function(test_escape_string_as_regex) + SET(test1 "\\.^$-+*()[]?|") + escape_string_as_regex(test2 "${test1}") + SET(testRef "\\\\\\.\\^\\$\\-\\+\\*\\(\\)\\[\\]\\?\\|") + if(NOT test2 STREQUAL testRef) + message("Error in the escape_string_for_regex function : \n ${test1} was escaped as ${test2}, should be ${testRef}") + endif(NOT test2 STREQUAL testRef) +endfunction()
\ No newline at end of file |
