我正在尝试提取 deviceSerialNumber=
之后一直到 &
或字符串末尾的文本。数据看起来像
someddata&=somedataagain&deviceSerialNumber=device12345&anotherField=moreData someddata&=somedataagain&deviceSerialNumber=deviceabcd
我试过了
REGEXP_SUBSTR(session_tags || '&', 'deviceSerialNumber(.*)&') from table
但是,这将返回所有文本,直到最后的 &
(这是字符串的末尾,因为我附加了一个 &
用于模式匹配目的) .我该如何修改此正则表达式以仅提取第一个 &
之前的文本?
最佳答案
我知道现在回复已经晚了,但这是对我有用的解决方案。
select regexp_substr(
'someddata&=somedataagain&deviceSerialNumber=device12345&anotherField=moreData ',
'deviceSerialNumber=(.*)&', 0, 1, 'e');
关于sql - Redshift 提取两个模式之间的字符串 (regexp_substr),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50841278/