У меня следующий сценарий:
File '/oname=$INSTDIR\workspace\jetty\work\webapp\WEB-INF\classes\com\sample\service\core\util\SomeModule$SomeModulesData$SomeModulesDataBuilder.class' '${ADDEDSOURCE}workspace\jetty\work\webapp\WEB-INF\classes\com\sample\service\core\util\SomeModule$SomeModulesData$SomeModulesDataBuilder.class' ; Added file
File '/oname=$INSTDIR\workspace\jetty\work\webapp\WEB-INF\classes\com\sample\service\core\util\CoolUtil.class' '${ADDEDSOURCE}workspace\jetty\work\webapp\WEB-INF\classes\com\sample\service\core\util\CoolUtil.class' ; Added file
Я хочу заменить знак '$' в имени * .class (может быть и другим) на '$$'.Я могу получить имя файла, но мне нужна только одна группа знака доллара.
Вот мой пример: https://regex101.com/r/Wa2cF6/2
В Java я просто хочу сделать:
public static void main(String[] args) {
String s = "File '/oname=$INSTDIR\\workspace\\jetty\\work\\webapp\\WEB-INF\\classes\\com\\sample\\service\\core\\util\\SomeModule$SomeModulesData$SomeModulesDataBuilder.class' \t'${ADDEDSOURCE}workspace\\jetty\\work\\webapp\\WEB-INF\\classes\\com\\sample\\service\\core\\util\\SomeModule$SomeModulesData$SomeModulesDataBuilder.class' \t; Added file";
s = s.replace("\\\\([a-zA-Z0-9_$]+)\\.\\w+'\\s", "$$");
System.out.println(s);
}
И ожидать результата
File '/oname=$INSTDIR\workspace\jetty\work\webapp\WEB-INF\classes\com\sample\service\core\util\SomeModule$$SomeModulesData$$SomeModulesDataBuilder.class' '${ADDEDSOURCE}workspace\jetty\work\webapp\WEB-INF\classes\com\sample\service\core\util\SomeModule$$SomeModulesData$$SomeModulesDataBuilder.class' ; Added file
Спасибо за вашу помощь.