不幸的是,我现在遇到了一些问题,因为我的数据已根据我开始看到的原始线程进行了更改:
使用 Oracle SQL 检索字符串中的某些字符串
我的数据现在已更改为如下所示:
member_of = CN=DAaXYZApple-Au,CN=DAaXYZApple-readonly, CN=aXYZApple-Write, CN=DAaXYZApple-Au-Admin, CN=aTest123_RW, {CN=# XXY22,} CN=aInternet-1
使用我原始帖子中描述的相同类型的技术,我需要获取仅包含字符串"aXYZApple"的所有字符串。 因此,基于上述内容,以下结果是我所追求的,并且仅显示:
aXYZApple-Au
aXYZApple-Readonly
aXYZApple-Write
aXYZApple-Au-Admin
我不确定我是否仍然需要像我原来的帖子一样使用 Oracle regexp_substr。
基于更新数据集的我自己的问题的解决方案如下,这几乎是基于我原始问题中提供给我的解决方案,即:
SELECT regexp_substr(line, 'aXYZApple[^,]*') subtxt
FROM (SELECT regexp_substr(:x, '[^,]*,', 1, rownum + 1) line
FROM dual
CONNECT BY LEVEL <= length(:x) - length(REPLACE(:x, ',', '')))
WHERE line LIKE '%aXYZApple%';