我猜我们可能想要传递两个 URL,在这种情况下我们将从:(\/[a-z]+)?(?:\.htm)?如果您愿意,我们可以添加更多边界。正则表达式如果这不是您想要的表达式,您可以在regex101.com中修改/更改您的表达式。正则表达式电路jex.im可视化正则表达式:JavaScript 分组分解const regex = /((\/[a-z]+)?(?:\.htm)?)/gm;const str = `/aaa/bbbb/ccccc.htm/xxx/yyy.htm`;const subst = `Group #1: $1\nGroup #2: $2\n`;// The substituted value will be contained in the result variableconst result = str.replace(regex, subst);console.log('Substitution result: ', result);如果您只想传递第二个 URL 并使第一个 URL 失败,您可以简单地在表达式中添加一些边界,也许与此类似的东西会起作用:^\/[a-z]+\/[a-z]+.htm$