javascript - 如何编写正则表达式来匹配我的字符串

标签 javascript regex

如何编写 JavaScript RegExp 来匹配

'/api/users'
'/api/users/'
'/api/users?age=22'
'/api/users/?age=22'

但不是

'/api/users/id'

正则表达式到目前为止我已经尝试过:

new RegExp('^' + '/api/users' + '\/?\\S*' + '$') 

最佳答案

如果我理解正确,您只想匹配以年龄参数开头的查询字符串:

/\api\/users\/?(\?age=\d+|$)/

\api\/users\/?将匹配/api/users 或 api/users/

(\?age=\d+|$)将匹配 ?age=22 或字符串结尾 ($)

[编辑]根据您的评论,更简单的表达:

/\api\/users\/?(\?|$)/

(\?|$)将匹配查询字符串的开头 (?) 或字符串的结尾 ($)

关于javascript - 如何编写正则表达式来匹配我的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18921605/

相关文章:

c# - 从代码后面输出Javascript时如何处理换行符

javascript - 我可以忽略 express static 中的几个静态文件吗?

regex - 使用 Grep 在匹配之前获取捕获组和行

c++ - 我可以在C++中使用正则表达式使用哪些正则表达式来解析分隔符,运算符,标识符和实数?

javascript - 早午餐/早餐 : Uncaught Error: Cannot find module 'frontend/js/components/Hello' from 'frontend/js/app.js'

一个文件中的 Javascript 窗口加载和依赖函数及其在另一个文件中的调用 : order of execution

javascript - Pico 找不到 python 模块

swift - 正则表达式 unicode 在 swift 中不起作用

c++ - 为 regex_iterator 使用自定义迭代器的问题

regex - Grep 搜索特定模式