gpt4 book ai didi

中间位置的正则表达式替换

转载 作者:行者123 更新时间:2023-12-02 04:43:17 26 4
gpt4 key购买 nike

我想替换下面的字符串

comments={ts=2010-02-09T04:05:20.777+0000, comment_id=529590|2886|LOL|Baoping Wu|529360}

comments={ts=2010-02-09T04:05:20.777+0000, comment_id=529590, user_id = 2886, comment='LOL', user= 'Baoping Wu', post_commented=529360}

我的方法是 comment_id=.([0-9])* 第一次替换其他替代品对我来说很难。谁能帮帮我?

最佳答案

您可以通过一次搜索和替换操作执行所有这些转换。使用以下具有捕获组的正则表达式:

(comment_id=)(\d+)\|(\d+)\|([^|]+)\|([^|]+)\|(\d+)

替换为 $1$2, user_id = $3, comment='$4', user= '$5', post_commented=$6

参见 regex demo

  • (comment_id=) - 第 1 组,文字字符序列
  • (\d+) - 第 2 组:一个或多个数字
  • \| - 文字管道符号
  • (\d+) - 第 3 组匹配另一部分数字
  • \| - 又是一个管道
  • ([^|]+) - 第 4 组捕获除 |
  • 之外的一个或多个符号
  • \| - 又是一个管道
  • ([^|]+) - 第 5 组捕获除 |` 以外的一个或多个符号
  • \| - 另一个管道
  • (\d+) - 第 6 组匹配另一部分数字

在替换字符串中,$n 是对捕获组的反向引用。

关于中间位置的正则表达式替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35605855/

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