当前位置: 首页 > 知识库问答 >
问题:

REGEXP_REPLACE函数输出中的解释[重复]

须景胜
2023-03-14

下面的两个查询给出了一些输出,

 Select REGEXP_REPLACE('Milind,Milind,Gopal,Gopal,Gopal,Milind'), '([^,]+) (,\1)+(,|$)', '\1\3') "OUTPUT"
FROM dual;

o/p Milind,Gopal,Milind


Select REGEXP_REPLACE('Milind,Milind,Gopal,Gopal,Gopal,Milind'), '([^,]+) (,\1+)(,|$)', '\1\3') "OUTPUT"
FROM dual;

o/p Milind,Gopal,Gopal,Milind

我不了解工作流程。它是如何输出的。谁能帮我解释一下吗。

共有1个答案

连德水
2023-03-14

匹配一个字符,可以是除逗号以外的任何字符。例如:M

<代码>[^,]匹配除逗号以外的任何字符1次或多次。例如:Milind

<代码>([^,])相同,但捕获结果,以便以后可以使用<代码>\1引用。

(,\1)匹配一个逗号后跟上一个捕获,一次或多次,并将结果捕获为\2。如果\1Milind,则可以匹配:, Milind, or, Milind, Milindor, Milind, Milind, Milind等。

(,|$)匹配逗号或行尾,并将其捕获为\3

这是替换模式:我们只保留了捕获中匹配的所有内容。

第二条语句显示了一个引入bug的小差异:

(,\1)匹配逗号后跟一个或多个先前捕获的出现,例如:, Milind, MilindMilind, MilindMilindMilind。因此,它无法删除几个逗号分隔的出现。

 类似资料:
  • 本文向大家介绍解释PHP中的array_merge()函数。,包括了解释PHP中的array_merge()函数。的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将学习array_merge(),这是一个预定义的PHP数组函数。array_merge()用于将至少两个以上的数组组合为一个数组。利用该功能将至少两个数组的组件组合在一起成为一个数组。 此函数以一种方式将一个或多个数组的元素合并

  • 以下程序的目的是将4个字符的单词从转换为,我已经完成了让该列表和len工作的困难部分。 问题是程序逐行输出答案,我想知道是否有任何方法可以将输出存储回列表,并将其作为一个完整的句子打印出来? 谢谢

  • 更新:我开始怀疑这是否是由于错误: https://github.com/domaindrivendev/Swashbuckle/issues/590 但这里提出的解决办法似乎并没有解决我的问题。 我正在使用SwashBuckle为C#ASP.NETWeb API项目生成API留档。 我的目标是允许以下作为有效URL: 其中必需参数(param1)设置为“foo ”,可选参数(param2)设置为

  • 本文向大家介绍PHP中imagick函数的中文解释,包括了PHP中imagick函数的中文解释的使用技巧和注意事项,需要的朋友参考一下 imagick的:: adaptiveBlurImage - 增加了自适应模糊滤镜图像  imagick的:: adaptiveResizeImage - 自适应调整图像数据依赖三角  imagick的:: adaptiveSharpenImage - 自适应锐化

  • 我确实有点理解Redux,但我不明白如何将函数放入函数中。 我对这一行有问题: 我们在这里用

  • 我是新的反应,我有一个问题,如何获得另一个组件的onclick值。