У меня есть регулярное выражение, которое я использую для проверки строки.
String s = SELECT column1,column2 GROUPBY column3 AS AliasName
regex = ^SELECT\s+[[a-zA-Z_$][a-zA-Z_$0-9]*,*]+[a-zA-Z_$][a-zA-Z_$0-9]?\s+GROUPBY\s+[[a-zA-Z_$][a-zA-Z_$0-9]*,*]+[a-zA-Z_$][a-zA-Z_$0-9]?\s+AS\s+[a-zA-Z_$][a-zA-Z_$0-9]*$
Эта проверка работает, но мне нужна помощь с изменением регулярного выражения, чтобы она допускала только одну запятую между каждой переменной Java и не допускала ее до первого столбца.
Напримерследующая строка не должна совпадать, но она соответствует:
String s2 = SELECT ,column1,,column2 GROUPBY column3 AS AliasName
Кроме того, я хотел бы изменить ее так, чтобы SELECT
, GROUPBY
и AS
могли быть прописными или строчными.Я знаю, что могу использовать чередование |
, но я бы предпочел другой способ.