在文本中查找以下模式

时间:2016-06-07 13:38:04

标签: python sql regex grep sql-parser

从更广泛的意义上讲,我需要解析SQL过程并找到proc所依赖的表和列。为此,我正在尝试搜索regex

示例:

from table db..tb
where tb.column2 = "N" AND column 1 in ("ab","cd")

它应该返回

tb.column2

column1

如何使用grepawk或python脚本等进行操作?

1 个答案:

答案 0 :(得分:0)

我对你的问题的解读是你有一个表 - 一个分隔的文件 - 你要检查第2列中某个特定行是否为“N”,并且在任何地方找到“ab”或“cd”第1列中的字符串。您希望触发的操作是打印“N”,后跟第1列中的值...

此示例答案显示了如何同时使用“this == that”和正则表达式比较的检查。它还显示了如何修改列分隔符。

awk -F "$delimiter" '$2 == "N" && $1 ~ /ab|cd/ { print $2; print $1 }'