【发布时间】:2018-12-11 21:50:36
【问题描述】:
我有一个字符串,基本上是一个 SQL 语句。我想提取其中的一部分。 这是代码
SELECT
DTE as "Date",
CURRENT_DATE AS "Day",
concat( BCCO, BCBCH ) AS "client/batch",
BCSTAT as "Batch Status",
CASE
WHEN EXC = 'MCR' THEN CNT
ELSE 0
END AS "MCR-NPR",
CASE
WHEN EXC = 'NRC' THEN CNT
ELSE 0
END AS "NRC-NPR",
CASE
WHEN EXC = 'OFD' THEN CNT
ELSE 0
END AS "OFD-NPR",
CASE
WHEN EXC = 'TDB' THEN CNT
ELSE 0
END AS "TDB-NPR",
CASE
WHEN EXC = 'TDC' THEN CNT
ELSE 0
END AS "TDC-NPR",
CASE
WHEN EXC = 'UDC' THEN CNT
ELSE 0
END AS "UDC-NPR",
CASE
WHEN EXC = 'BIN' THEN CNT
ELSE 0
END AS "BIN-WRN",
CASE
WHEN EXC = 'DSP' THEN CNT
ELSE 0
END AS "DSP-WRN",
我想提取 END AS 和引号之间的每个元素。像 ("MCR-NPR",...,"DSP-WRN") 这样的向量将是期望的输出。
我知道我可能需要使用正则表达式,但我无法提取每一个。
任何想法都会受到赞赏。
最好的,
【问题讨论】:
-
我找不到 R 实现,但是有一个 Python 努力来解析你可以使用的 sql - github.com/mozilla/moz-sql-parser
标签: r replace data-manipulation text-extraction