Regex替换删除字符串



我有任何字符串:

xxxxxxxxxxxxxxxx

我有3个字符串我想替换:

  • abc
  • def
  • ghi

示例字符串可能如下所示:

xxxxxxxxxxx abcyyyydefzz

所需输出为:

xxxxxxxxxxx-yyyyzz

以下regexp运行良好:

^(.*)(?:abc|def|ghi)(.*)$ replacing with $1$2

但是,如果输入字符串不包含这3个字符串中的任何一个,则模式不匹配,输出为空。

我该如何避免这种行为?

只是不将字符串的其余部分分组匹配。只需更换

(?:abc|def|ghi)

带有空字符串。

相关内容

  • 没有找到相关文章