У меня возникли проблемы с выходом двойных долларов из строки, которая будет использоваться с шаблоном/сопоставителем функций регулярных выражений.
Это часть строки:
WHERE oid_2 = $$test$$ || oid_2 = $$test2$$
и это самый близкий код, который я пытался подобрать к решению:
List<String> strList = new ArrayList<String>();
Pattern pattern = Pattern.compile("\$\$.*?\$\$");
log.debug("PATTERN: "+pattern)
Matcher matcher = pattern.matcher(queryText);
while (matcher.find()) {
strList.add(matcher.group());
}
log.debug(strList)
Это вывод отладки, который я получаю
- PATTERN: $$.*?$$
- []
Таким образом, шаблон на самом деле правильный, но заполнители не найдены в строке.
В качестве теста я попытался заменить «$$test$$» на «XXtestXX», и все работает отлично. Что мне не хватает? Я пробовал строки "/$", "\\", но до сих пор не нашел решения.