【问题标题】:Comparing two regex objects比较两个正则表达式对象
【发布时间】:2017-10-08 01:31:00
【问题描述】:

我有两个已经过测试并且可以工作的正则表达式值:

(?<=\bpolicy-map\s)(\w+)

(?<=\binput\s)(\w+)

我现在需要比较两个正则表达式值以进行匹配。
(? ------------rtr 配置------ 策略映射 RTR_CoPP 控制平面 服务策略输入 RTR_CoPP ------------rtr 配置------

【问题讨论】:

  • Java 和 JavaScript 是不一样的......这是什么......
  • 我不清楚你在问什么,以及 Java 或 JavaScript 与它有什么关系。您是否在寻求帮助编写正则表达式?您是否在寻求帮助编写程序?无论如何,向我们展示您迄今为止为尝试解决您所询问的问题所做的工作。
  • (?
  • 最终试图获得一个简单的正则表达式解决方案,而不是编写程序。这是为了确保“policy-map”和“service-policy input”之后的单词相同。

标签: javascript regex regex-group


【解决方案1】:

假设您正在解析您的配置,该配置将文本读取为字符串, 我会简化您的正则表达式以匹配第一项:/^.*policy-map\s(\w+) 和第二项:/\binput\s(\w+)$/

这应该从头开始解析第一个正则表达式,从结尾解析第二部分。如果您要比较来自两个不同正则表达式的匹配项,则不需要?=,如果您输入单个正则表达式,它会重置指针。

【讨论】:

  • 目的是使用lookbehind来定位短语“route-map”和“service-policy input”之后的未知词,确保它们相同。 RTR_CoPP 只是可能存在的众多名称之一,因为策略的名称不是恒定的。我无法让你的正则表达式工作,因为它匹配整个短语“policy-map RTR_CoPP”而不仅仅是“RTR_CoPP”部分。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-10
  • 1970-01-01
相关资源
最近更新 更多