【发布时间】:2021-08-04 13:09:35
【问题描述】:
我正在尝试使用 Oracle 12c regexp_substr 从字符串中提取一个单词,但无法理解它是如何工作的,网络上的信息太多,我很困惑。
所以我想从字符串中提取tmp* 表:
query_str:
select
column1 c1,
column2 c2
from tmp_123 foo1, -- some comments here
TAB1_123 TAB1
where 1=1
;
尝试使用这个但没有“运气”:
select regexp_substr(query_str, 'TMP_[A-z]+', 1, 1, 'i');
我想提取直到空格和tmp表名中间可以有数字这样:tmp_123。
有什么建议吗?
【问题讨论】:
-
可能是
'TMP_\w+'或'TMP_\S+'? -
我觉得效果很好,谢谢
-
W(单词)和S(空格)有什么区别?