我想像这样提取SQL字符串的一部分:

SELECT *,somecolumn, anothercolum FROM sometable INNER JOIN anotherTable WHERE somecolumn>1


在变量中:

aVariable = "*,somecolumn, anothercolum";
anotherVariable = "sometable INNER JOIN anotherTable";
Vaiable = "somecolumn>1";


我已经尝试过(在JavaScript中):

/SELECT\s(\*|[\w\,\_\d]+)\sFROM\s([\w\,\_]]+)(?:\s(.*))


INNER JOIN失败。

最佳答案

/SELECT\s(.*?)\sFROM\s((?!WHERE|ORDER BY|GROUP BY).*?)(?:WHERE\s|ORDER BY\s|GROUP BY\s|\Z)(.*)/

关于javascript - 使用正则表达式提取SQL语句的一部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10213030/

10-11 13:20