teradata中的正则表达式,如何传递两个值

时间:2015-06-12 15:46:29

标签: sql regex teradata

我有以下正则表达式,但我需要找到这个表达式,如果shop_id也

   regexp_substr(field_text ,'(?<=\?page_id\=)(.*?)(?=\&)' ,1 ,1, 'i')

我试过了:

   regexp_substr(fullurl ,'(?<=(\?page_id\=|/page_id/))(.*?)(?=\&)' ,1 ,1, 'i')

但它声明这不是一个有效的模式,有人可以解释为什么不,因为它适用于正则表达式网站。

1 个答案:

答案 0 :(得分:1)

您需要为替代表达式添加圆括号:

REGEXP_SUBSTR(fullurl ,'(?<=\?(page|shop)_id\=)(.*?)(?=\&)' ,1 ,1, 'i')