gpt4 book ai didi

regex - 在 Express.js 中,我如何编写路由/正则表达式来捕获美国所有州?

转载 作者:太空宇宙 更新时间:2023-11-03 23:10:51 24 4
gpt4 key购买 nike

目前我的字符串中的状态如下:

var states = 'AL|AK|AR|AZ|CA|CO|CT|DC|DE|FL|GA|HI|IA|ID|IL...';

我想捕捉

mydomain.com/CA/more-stuff

分成两个单独的参数。第一个包含状态信息,第二个包含附加信息。我知道如何获取附加信息:

app.get('/' ??? + '/:additional', ...);

如何获取状态信息?

最佳答案

如果将其定义为路径中的参数...

app.get('/:stateabbr/:additional', ...);

您可以使用 app.param() 进行验证:

app.param('stateabbr', function (req, res, next, abbr) {
var stateAbbrs = /AL|AK|AR|AZ|CA|CO|CT|DC|DE|FL|GA|HI|IA|ID|IL|../i

if (stateAbbrs.test(abbr)) {
next()
} else {
next(new Error('Unrecognized State abbreviation.'));
}
});

关于regex - 在 Express.js 中,我如何编写路由/正则表达式来捕获美国所有州?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12139082/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com