正则表达式匹配字符串中的连字符

All*_*ang 1 regex

我有一个正则表达式\([0-9]+|\-)\,可以采用数字或连字符.
但是如果我使用它来匹配-555它仍然有效,因为它匹配连字符-.所以我想知道是否有办法匹配整个事情?

mgi*_*nbr 8

/^([0-9]+|\-)$/
Run Code Online (Sandbox Code Playgroud)

^"在年初手段线",以及$"在其结束"的意思.

编辑:修复答案,感谢luke-gru.正如评论中指出的那样,\A是在字符串的开头,\Z是在它的结尾.行为^$取决于是否启用了多行.

  • 只是为了成为一个肮脏的学生,\ A和\ Z乞讨.和字符串结束,而^和$是求.和行尾.大部分时间他们是相同的,但是当你没有做好准备时,击中异常值很糟糕. (3认同)