MariaDB Regex 仅替换字符的第一个实例

And*_*urn 3 regex mysql mariadb

SELECT REGEXP_Replace('hello', '[l]', ''); 
Run Code Online (Sandbox Code Playgroud)

如何编写正则表达式以仅替换“l”的第一个实例

Wik*_*żew 6

使用具有否定字符类和锚点的捕获组:

SELECT REGEXP_REPLACE('hello', '^([^l]*)l', '\\1'); 
Run Code Online (Sandbox Code Playgroud)

请参阅正则表达式演示

细节

  • ^- 字符串的开头
  • ([^l]*)-捕获组1 捕获 0+ 字符以外的字符l
  • ll-只是匹配但未捕获的字面字母。

替换模式包含一个反向引用,该反向 \1引用引用组 1 中包含的值,即任何不符合l第一个的文本l