gpt4 book ai didi

regex - PostgreSQL regex_replace

转载 作者:行者123 更新时间:2023-11-29 12:51:50 25 4
gpt4 key购买 nike

我想使用正则表达式将字符串 ___abc_[_]xyz 转换为 ...abc.\_xyz

是否可以将_[_]分别转换为.\_查询?

这是我到目前为止所做的:

SELECT regexp_replace('___abc_[_]xyz','\[(.)\]','\\\1','g');

SELECT regexp_replace('___abc_[_]xyz','\[_\]','\_','g');

两个查询的结果是:___abc_\_xyz

最佳答案

双重 regexp_replace 可以完成这项工作:

SELECT regexp_replace(regexp_replace('___abc_[_]xyz','(?!\[)_(?!\])','.','g'),'\[_\]','\\_','g');
regexp_replace
----------------
...abc.\_xyz
(1 row)

第一个,使用 (?!\[)_(?!\]) 将替换 [ & ] 之间的下划线 带点。

第二个会将 [_] 替换为 \_

关于regex - PostgreSQL regex_replace,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52166808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com