我试图想出一个正则表达式来从SQL语句中删除评论。从SQL语句中删除评论的正则表达式
这几乎正则表达式的工作原理:
(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|'(?:[^']|'')*'|(--.*)
Excepth半句不处理 “ - ” 很好的意见。问题在于处理用''分隔的SQL字符串。
举例来说,如果我有
SELECT ' -- Hello -- ' FROM DUAL
应该无法比拟的,但它的匹配。
这是在ASP/VBscript。
我想过从右到左匹配,但我不认为VBScript的正则表达式引擎支持它。也尝试过负面的逆序,但结果并不好。
贾斯汀嗨,你好,感谢您的帮助。内嵌评论的问题仍然存在,一开始就没有开始。就像SELECT' - Hello - 'FROM DUAL - 应该删除的注释 – 2012-03-14 14:04:30
没问题,并欢迎堆栈溢出。请记住,在这里表示赞赏的方式是通过upvotes和接受的答案(答案旁边的复选标记)。更多信息可以在[常见问题解答]中找到,尤其是[FAQ#HowToAsk]如何提问 – 2012-03-14 14:09:29