C#中如何判断SQL语句括号、单引号是否匹配

彗星 2013-04-24 11:22:47
数据库为oracle,如题,现在小弟在winform中做这样一个逻辑判断,只是判断括号和单引号是否对称匹配,百度了下看到很多种做法,有利用栈的做法、有利用正则表达式的做法,验证下来都可以去实现,但我想知道验证不匹配后出错的位置,比如说以下例子
select to_char(sysdate,'yyyy-mm-dd') from dual 此句正确
select to_char(sysdate,'yyyy-mm-dd' from dual 缺少右括号,并显示其出错位置高亮显示
select to_char(sysdate,'yyyy-mm-dd) from dual 缺少单引号,并显示其出错位置高亮显示

各位牛人可以提供些思路吗?谢谢了
...全文
272 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
彗星 2013-04-24
  • 打赏
  • 举报
回复
这个用栈的方式知道怎么做了,就是单引号检测是否匹配有点男,因为''左右都是相同的,应该用什么方式去判断呢?
  • 打赏
  • 举报
回复
用正则的平衡组递归可以看括号是否匹配
游戏人间 2013-04-24
  • 打赏
  • 举报
回复
用栈的做法好一点,在不配对的情下报表位置就好。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧