我需要在FROM
和WHERE
或;
为此,我有
Pattern p = Pattern.compile("(?<=\\bFROM\\b).*?(?=\\bWHERE\\b)");
这很好。
示例1:
input = "select * from emp, dept where 1 =1 "
使用上面的模式,它将返回
emp, dept
示例2:
input = "select * from emp, dept"
从上面的输入我写的如下:
Pattern p = Pattern.compile("(?<=\\bFROM\\b).*?(?=\\bWHERE|;\\b)");
返回emp,dept
,但它没有返回。
请您帮我们解决这个问题?
答案 0 :(得分:0)
修改表达式以识别WHERE子句中的所有字符,并使其成为可选
(?<=\bFROM\b).*?(\s*WHERE\s.*)?$