用于 API 子域的正则表达式
Regex for API subdomains
我想要一个与以下域匹配的正则表达式:
- dev.api.company.com
- live.api.company.com
- test1.dev-api.company.com
- test2.live-api.company.com
- yyy.XXXapi.company.com
但在以下方面不匹配:
- dev-api.company.com
- live-api.company.com
- api.company.com
- XXXapi.company.com
我试过这个:^[a-z]+。[a-z-]*api.company.com$ 但它不起作用,我无法使其工作。你能帮我吗?
我正在使用javascript String.match()函数。
尝试以下正则表达式:
^[a-zA-Z0-9]+'.[^'.]*api'.company'.com$
演示
请考虑以下事项:
if (string.matches("^(dev''.api|live''.api|test''d+)''..*$")) {
// Accepted subdomain
} else {
// Nope
}
您可以输入任意数量的选项,用 |
正则表达式的分解:
^ - 开头为
(选项1|选项2|选项3) - 接受的子域列表
''. - 子域后必须跟一个句点
.*$ 任何其他内容,直到字符串末尾
如果您没有选择的一般经验法则,此解决方案允许您轻松管理接受的子域。
试试这个:
/^[a-z''.''-]{0,}api.company.com$/
针对您的示例进行测试,它有效。
相关文章:
- java.net和javascript之间正则表达式的差异
- Grunt匹配正则表达式
- 不同浏览器中的空白字符正则表达式行为
- 正则表达式在字符串中找到base64
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 调用正则表达式匹配的函数
- 使用正则表达式评估电子邮件地址时出现性能问题
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 正则表达式只允许 x 个整数
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 改进用于验证付款金额的正则表达式
- 正则表达式与数字中的第二个点匹配
- 键按正则表达式以查找具有负值的小数
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 将po-box javascript正则表达式转换为c#regex
- 在mongoose中使用正则表达式在对象数组中进行查询搜索
- 用于 API 子域的正则表达式
- 用于Google Calendar API日期输出的正则表达式
- API 调用的 URL 正则表达式