正则表达式:用自己的子字符串替换字符串

时间:2014-07-24 01:32:55

标签: regex

我正在编写一个正则表达式,用自己的子字符串替换字符串模式。而且我真的不知道那是否可能(我之前只使用过正则表达式)。

示例:

转换它:

ObjectId(shkijfn8bshhby302knw);

"shkijfn8bshhby302knw"

如果有可能这样做,有人可以指导我参考指南或教程。

修改 修改了问题。实际上我想在初始字符串中添加引号。

2 个答案:

答案 0 :(得分:2)

使用此替换,您可以根据需要提取参数值:

当然,这完全取决于您使用的环境/语言/ IDE /文本编辑器,但这应该适合您。

(我刚看了你的评论,说明你正在使用JavaScript,这个正则表达式确实与JavaScript兼容。)

自由间隔:

  • ObjectId\(":文字字符串ObjectId(",被丢弃
  • (\w+)One or more word-characterscaptured(这是$1的用途。它是<\ n < em>第一个捕获组)
  • "\);:文字字符串");,将被丢弃。

请考虑将Stack Overflow Regular Expressions FAQ加入书签以供将来参考。

答案 1 :(得分:0)

这适用于大多数正则表达式:

搜索:ObjectId\("([^"]*)"\);

替换:$1

([^"]*)中的括号捕获任何不是"的字符组到字符组1.这是您的子字符串。我们用第1组替换整场比赛。