Мне нужно покрыть два сценария в строковой функции.
- Игнорировать ';'если в скобках
- Игнорировать ';'если строка начинается с '-'
У меня есть большая строка, содержащая несколько операторов SQL, которые мне нужно разделить на ';'за исключением вышеприведенных сценариев, где есть закомментированный блок или точка с запятой существует в функции - по иронии судьбы, такой как REGEXP ()
Я попытался поместить второй блок с отрицательным прогнозом до или после существующего,но, кажется, никогда не работает.
String[] queries = queryParam.trim().split(";(?![^()]*\\))");
- работает для круглых скобок
String[] queries = queryParam.trim().split(";(?![^()]*\\))(?!-*\-)");
- не работает
String[] queries = queryParam.trim().split(";(?!-*\-)(?![^()]*\\))");
- не работает
https://regex101.com/r/Sdx8TC/1