【问题标题】:Regex is unable to use same character for two matches正则表达式无法对两个匹配项使用相同的字符
【发布时间】:2020-02-11 05:07:40
【问题描述】:

在下面的正则表达式中,当“ac”包含在两个斜杠之间时,我想匹配所有情况。第一个匹配,但第二个不匹配,因为中间斜线用于第一个匹配。有什么方法可以强制第二个“ac”也匹配?

https://regex101.com/r/WxTFJI/2

以下是我尝试过的

([\/])ac([\/])

我的测试字符串是

/ac/ac/ 

谢谢

【问题讨论】:

  • 感谢您的帮助!很高兴知道在帖子本身中包含信息 - 将来一定会这样做。

标签: regex preg-replace


【解决方案1】:

(\/)ac(\/) 与第二个 ac 不匹配的原因是因为第二个 /ac/ 已经被捕获,剩下的 ac/ 但根据您的问题,您只需想要不带斜线的ac。如果是,那么

(?<=\/)ac(?=\/)

【讨论】:

    猜你喜欢
    • 2021-05-10
    • 1970-01-01
    • 2014-05-21
    • 1970-01-01
    • 2023-03-18
    • 2021-10-17
    • 1970-01-01
    • 2022-12-07
    相关资源
    最近更新 更多