代码之家  ›  专栏  ›  技术社区  ›  Hannan

正则表达式:如何检测一个特定的文本,然后是一个特定的数字?

  •  -3
  • Hannan  · 技术社区  · 6 年前

    我想对以下语句使用regex:

    • 什么是 前10名 目的地?
    • 什么是 前5名 目的地?
    • 什么是 倒数第10名 目的地?
    • 什么是 倒数第7名 目的地?

    如何为上述情况编写正则表达式 第一 它检测用户是否想要“顶部”或“底部”目的地 然后 检查数量,即10或7或5?

    我在尝试下面的方法,但没有成功。

    (?<top>\d{2})
    (?<bottom>\d{2})
    

    基本上,如果用户键入前10个目的地,系统将触发一个响应,例如。

    console.log("you want top 10 destinations")
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Yassin Hajaj    6 年前

    您可以使用以下regex

    .*((?:top|bottom)\s+\d+).*
    

    换成下面的句子

    You want the $1 destinations
    

    Demo