我想将括号中的单词替换为引号。 我的previous question在圆括号中有一个值。这个和我以前的问题是一样的,但是想到了一个我将在括号中有多个值的场景。将括号中的单词替换为引号
下面是我在可变数据的一个数据 -
SELECT *
FROM (
SELECT table1 file2.txt file.txt queues qdefinitions parameters trap-deposit-dstran.dat.2016-08-07
FROM cs_case
WHERE ant_cd='FI_BASE_TENANT') t1
LEFT OUTER JOIN table2 t2
ON t2.case_id=t1.case_id
LEFT OUTER JOIN table3 t3
ON t3.service_xid=t1.service_xid
LEFT OUTER JOIN table4 t4
ON t4.service_id=t1.service_id
WHERE (
t1.casestatus_cd = (new,retired,pending,OPEN,closed)
OR t1.case_status_num = (1,2,3,4))
GROUP BY t1.case_reference,
t2.last_scrfp,
t1.service_id
ORDER BY t2.last_scrfp DESC
这里是我想要的。
SELECT *
FROM (
SELECT table1 file2.txt file.txt queues qdefinitions parameters trap-deposit-dstran.dat.2016-08-07
FROM cs_case
WHERE ant_cd='FI_BASE_TENANT') t1
LEFT OUTER JOIN table2 t2
ON t2.case_id=t1.case_id
LEFT OUTER JOIN table3 t3
ON t3.service_xid=t1.service_xid
LEFT OUTER JOIN table4 t4
ON t4.service_id=t1.service_id
WHERE (
t1.casestatus_cd = ('NEW','RETIRED','PENDING','OPEN','CLOSED')
or t1.case_status_num = (1,2,3,4))
GROUP BY t1.case_reference,
t2.last_scrfp,
t1.service_id
ORDER BY t2.last_scrfp DESC
以前我以Regex Quote-Like operatorssln,以提供可读性/可维护性使用sed命令如下
sed -E 's/\(([^(,$1)'\'']+)\)/('\''\1'\'')/g' Filename.txt
嗨,尼克,正如以前指出,你应该在你的问题中使用[标记](http://stackoverflow.com/editing-help)来使事情更清晰。上次我为你格式化了它,但我认为你至少应该知道你是否会发布多个问题。 –
你应该解释为什么这个问题不同于你的[最后一个](http://stackoverflow.com/q/38955980/176646)。我要投票关闭作为一个副本,直到我看到[埃德莫顿的评论](http://stackoverflow.com/questions/38955980/extract-words-between-2-parentheses-in-unix-linux#comment65306083_38956931)建议你问一个新问题。 – ThisSuitIsBlackNot
我的上一个问题在括号中有一个值。埃德莫顿的评论一个命令,我修改一点点。这个和我以前的问题是一样的,但是想到了一个我将在括号中有多个值的场景。 我想在SAS中自动执行此过程,我将运行unix命令以使用sed命令替换查询。希望这是有道理的。 – Nick