sql - Oracle SQL 获取两个特殊字符之间的值

标签 sql oracle

<分区>

我正在寻找一个 Oracle SQL 查询来从 'RTG/LATCH.PETROL_ABC' 中获取值 'LATCH'

谢谢

最佳答案

您可以使用正则表达式:

select regexp_replace('RTG/LATCH.PETROL_ABC', '.*/(.+)\..*', '\1' ) from dual

首先我们找到匹配项:

.*/ 匹配RTG/

(.+) 匹配 LATCH 并将匹配标记为第 1 组

\..* 匹配 .PETROL_ABC

然后我们用 \1

匹配的第 1 组替换整个字符串

关于sql - Oracle SQL 获取两个特殊字符之间的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31741844/

相关文章:

php - 当查询涉及表名变量时,表单不起作用 -- PHP -- MYSQL

mysql - dBase 表达式 类似于 MYSQL 中没有

oracle - Oracle中的IDLE超时参数

oracle - 阻止应用程序登录 Oracle 数据库

java - 奇怪的 File.list() 行为

php - 检查一个表的ID是否用作另一个表的外键

php - 子查询问题,使用 "AS"和 "AND"时返回SQL错误

oracle - 如何使用CLOB调用REPLACE(不超过32K)

sql - PostgreSQL 中的相对 row_number()

sql - Oracle RAC 和序列