当前位置: 首页 > 面试题库 >

如何仅替换捕获的组?

宫铭
2023-03-14
问题内容

我在字符串前后有HTML代码:

name="some_text_0_some_text"

我想将替换为0!NEW_ID!

所以我做了一个简单的正则表达式

.*name="\w+(\d+)\w+".*

但是我看不到如何专门替换捕获的块。

有没有办法用其他字符串替换捕获的结果($ 1)?

结果将是:

name="some_text_!NEW_ID!_some_text"

问题答案:

一种解决方案是为前面和后面的文本添加捕获:

str.replace(/(.*name="\w+)(\d+)(\w+".*)/, "$1!NEW_ID!$3")


 类似资料:
  • 我很难匹配和捕捉这些。目前我正在尝试以下变体: 我认为sed有一些regex或捕获组行为我不理解

  • 我知道我可以在1字节内存储和检索2个4位数字,如下所示: 但是,我如何在不触及最后4位(15)的情况下覆盖这两个数字中的一个(比如第一个(10))?

  • 问题内容: 假设我要更改为。 通过我可以做到这一点,如下所示: 如何在Python中进行类似的替换?我试过了: 问题答案: 您需要转义反斜杠: 或者,您可以像使用正则表达式一样使用原始字符串:

  • 问题内容: 有什么方法可以用捕获组的已修改内容替换正则表达式? 例: 我想用$ 1乘以3代替所有出现的情况。 编辑: 看起来好像出了点问题:( 如果我用 引发IllegalStateException:找不到匹配项 但 工作正常,但我不能更改$ 1 :( 问题答案: 要获得第一场比赛,请使用。之后,你可以用来引用此第一个匹配项,并将所有匹配项替换为第一个匹配值乘以3。 如果你想将每个匹配项替换为该

  • 我已经在tomcat 7.0.55中部署了一个应用程序进行测试。我想捕获“HeapDumpOnOutOfMemoryError”是否正在发生。以下是我的JVM参数。 JAVA_OPTS="-server-Xms512M-Xmx2048M-XX: PermSize=256m-XX: MaxPermSize=512m-XX: UseConcMarkSweepGC-XX: UseParNewGC-XX:

  • 问题内容: 我有以下代码: 我想捕获HTML响应?我该怎么做呢?我可以向form1.submit方法注册任何回调函数吗? 问题答案: 使用普通的javascript,您将无法轻松做到这一点。发布表单时,表单输入将发送到服务器,页面会刷新- 数据在服务器端处理。也就是说,该函数实际上不返回任何东西,它只是将表单数据发送到服务器。 如果您真的想用Javascript获得响应(无需刷新页面),则需要使用