从postgresql中的字符串中提取子字符串
Substring extract from string in postgresql
以下查询从 url 中提取最后两部分。我想从 url 中提取倒数第二部分,不包括最后一部分。
SELECT substring(url,'/[^/]+/[^/]+$') FROM url_time;
假设我输入 Input : http://whosebug.com/questions/ask
那么我希望得到 Output : /questions
抱歉,如果这是一个微不足道的问题。我无法找到所需的解决方案。
感谢任何帮助。
regexp_replace 捕获组将执行此操作:
SELECT REGEXP_REPLACE ( url,'^.*/([^/]+)/[^/]+$', '' ) FROM url_time;
最初的^.*
消耗了url的开始。第一个 [^/]+
周围的括号 ()
表示捕获组,
将整个匹配替换为输出中捕获组的值。
以下查询从 url 中提取最后两部分。我想从 url 中提取倒数第二部分,不包括最后一部分。
SELECT substring(url,'/[^/]+/[^/]+$') FROM url_time;
假设我输入 Input : http://whosebug.com/questions/ask
那么我希望得到 Output : /questions
抱歉,如果这是一个微不足道的问题。我无法找到所需的解决方案。
感谢任何帮助。
regexp_replace 捕获组将执行此操作:
SELECT REGEXP_REPLACE ( url,'^.*/([^/]+)/[^/]+$', '' ) FROM url_time;
最初的^.*
消耗了url的开始。第一个 [^/]+
周围的括号 ()
表示捕获组, 将整个匹配替换为输出中捕获组的值。