sql - 需要删除确切的字符组
问题描述
我需要删除特定字符串(-->)之后的所有字符。
select
REGEXP_SUBSTR('-->Team Name - Red-->blue', '[^(-->)]+')
from dual;
上述查询的预期结果是“ Team Name - Red ”。但它返回的“团队名称”。
只要匹配任何一个字符,它就会过滤掉所有内容。
解决方案
您仍然可以使用Regexp_Substr()
分析功能:
Select Regexp_Substr('-->Team Name - Red-->blue',
'-{2}>(.*?)-{2}>',1,1,null,1) as "Result"
From dual;
Result
---------------
Team Name - Red
-{2}>
〜恰好两次出现-
和一次出现>
例如(-->
)
(.*?)
~ 匹配由上述模式分隔的任何内容
推荐阅读
- javascript - 从 Flow 迁移到 TS 错误:TS8010:类型注释只能在 TypeScript 文件中使用
- javascript - 使用具有最大行数的nodejs读取csv文件
- python - 我想从 github 以字典的形式获取数据,但面临问题“字典更新序列元素 #0 的长度为 1;需要 2”
- angular - 只有单击选项卡才能显示 mat-tab 的内容吗?角
- awk - 使用 AWK 通过匹配、重命名和赋值来提取列
- python - 我的基本 Python 代码中用于计算数字总和的逻辑缺陷?
- excel - 使用 VBA 从 JPG 图像中提取 IPTC 数据
- c++ - 缓存未命中测量:perf_event 结果与 VTune 完全不同
- javascript - JQuery 验证清空 JS 对象
- vb.net - 使用 VSTO VB 插件从 365 共享日历中删除约会范围