首页 > 解决方案 > 为什么这个正则表达式不匹配?

问题描述

正则表达式:/\s[0-9|_|-|A-Z]+$/

输入:"White 815-W"

预期输出:"White"

实际输出:"White 815-W"

我期待那/\s[0-9|_|-|A-Z]+$/会匹配" 815-W",但事实并非如此。我错过了什么?

console.log("White 815-W".replace(/\s[0-9|_|-|A-Z]+$/, ''))

标签: javascriptregex

解决方案


|您将 char 类中的 or 运算符也与- That 需要在开头的范围混淆了。

console.log("White 815-W".replace(/\s[-0-9_A-Z]+$/, ''))


推荐阅读