Regex 正则表达式帮助-忽略/新闻*但目标/新*

Regex 正则表达式帮助-忽略/新闻*但目标/新*,regex,Regex,我是regex的初学者,有以下问题: 我想要一个正则表达式,它只针对“/new”字符串,而不是“/news”字符串。以下是我想在其上使用的两个文本示例: /类别/新闻/新 /类别/新闻/新?t=周 /政治/新 此外,新闻总是在新的顺序之前。在/new之后再也不会有另一个“/”了。(我希望这对你有意义。) (我使用它将活动类应用于导航菜单。但我在新闻部分遇到了一个问题,页面认为活动排序类型是“新”的,而实际上它是“顶”的,因为我是根据URL的路径确定的) 我试着写了一个,但没有成功: /新的[^s

我是regex的初学者,有以下问题:

我想要一个正则表达式,它只针对“/new”字符串,而不是“/news”字符串。以下是我想在其上使用的两个文本示例:

/类别/新闻/新

/类别/新闻/新?t=周

/政治/新

此外,新闻总是在新的顺序之前。在/new之后再也不会有另一个“/”了。(我希望这对你有意义。)

(我使用它将活动类应用于导航菜单。但我在新闻部分遇到了一个问题,页面认为活动排序类型是“新”的,而实际上它是“顶”的,因为我是根据URL的路径确定的)

我试着写了一个,但没有成功: /新的[^s]

任何帮助都将不胜感激。 谢谢

您可以使用

/new(?:[?/]|$)

详细信息

  • /new
    -文本
    /new
    子字符串
  • (?:[?/]|$)
    -两种选择之一:
    • [?/]
      -要么是
      要么是
      /
    • |
      -或
    • $
      -字符串结尾

试试
/new(?:/|$)
谢谢你的回答,这几乎是对的,但我在我的问题中遗漏了另一个用例,我现在已经添加了:它还需要在下面的/category/news/new?t=weekThen
/new(?:[?/]|$)
谢谢你的Wiktor Stribiżew!这看起来完全符合我的要求。很高兴能提供帮助,请参阅下面的演示和解释。