正则表达式 Javascript替换为对匹配组的引用?

更新时间:2024-04-26 下载TXT文档 下载Word文档

我有一个字符串,例如hello _there_。 我想使用JavaScript分别用替换两个下划线。 (因此)输出看起来像hello there。 该字符串可能包含多对下划线。

我正在寻找的是一种在每个匹配项上运行函数的方法,就像Ruby那样:

"hello _there_".gsub(/_.*?_/) { |m|"" + m[1..-2] +"" }

或能够再次引用匹配的组,就像在ruby中一样:

"hello _there_".gsub(/_(.*?)_/,"\\1")

有什么想法或建议吗?

"hello _there_".replace(/_(.*?)_/, function(a, b){
    return '' + b + '';
})

哦,或者您也可以:

"hello _there_".replace(/_(.*?)_/,"$1")
  • Javascript是否使用$1而不是\1? 有人会提供文档链接吗?
  • @daveloyall es5.github.io/#x15.5.4.11
  • replacementValue可以是一个函数,并根据捕获组传递不同的参数? 惊人!
  • 我发现 1可以使用,但$ 1却没有,尽管我使用的是RegExp版本:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/
  • 多数民众赞成在正则表达式本身。 人们正在谈论replacestring。
  • @CalculatorFeline说"正则表达式本身"并不能识别哪个正则表达式,因为有人可能会尝试使用正则表达式进行替换。 必须有很多人试图这样做:"hello _there_".replace(_(.*?)_, \1<\div>)
  • 有关函数替换的文档developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/

您可以使用replace代替gsub。 短码网=DuanMa.NET

"hello _there_".replace(/_(.*?)_/g,"\$1")
  • 您可以删除反斜杠。

用于$指定的替换字符串和替换模式。
这是简历:

enter image description here

链接到doc:这里

"hello _there_".replace(/_(.*?)_/g,"$1")

注意:

如果要在替换字符串中包含$,请使用$$。 与vscode代码段系统相同。

以上就是短码网小编为大家整理的《正则表达式 Javascript替换为对匹配组的引用?》相关内容,希望大家喜欢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若内容造成侵权/违法违规/事实不符,请将联系本站反馈,一经查实,立即处理!

正则表达式 Javascript替换为对匹配组的引用?》文档下载仅供参考学习,下载后请在24小时内删除。

转载注明出处:https://www.duanma.net/article/99c27987455.html

回到顶部