正则表达式从捕获组/变通方法中删除字符

时间:2017-04-06 11:47:35

标签: regex

假设我有一个像

这样的字符串

@ABCD|NN12CT55|GFR

现在我要匹配

@ABCD|N

并将其替换为

@ABCD N

匹配的正则表达式 @ABCD\|[^G]

有没有办法删除|从捕获组?

1 个答案:

答案 0 :(得分:3)

你可以试试这个正则表达式

^@[^|]*\K\|

并替换为:

" "

说明:

  1. ^标记字符串的开头
  2. @匹配@ sign
  3. [^|]*匹配除管道之外的任何内容|
  4. \K如果匹配被发现到上一个点,则\ K成功 以当前位置为起点因此前一部分不会 被替换
  5. \|匹配管道 - >这个管道将被替换
  6. Demo