你这个地方加不加g无所谓的,g表示多次匹配,只有在需要对每个匹配的项目进行处理(例如替换)时才有特殊意义。
第一个因为没有^和$,所以只有要数字和-就对,第二个有这两个符号,^表示开始,$表示结束,整体的意思就是必须完整匹配,不得有其它内容。例如ABC028-88888就可以匹配第一种方式,但是在第二种就会失败。
还有问题吗?
使用转义字符\即可。如var reg=/\//匹配一个正斜杠出现在正则中有特别含义的字符都需要\来转义,如:\ . * ^ & [ ] { } ? 等
注意的是如果在[]字符集合里,很多字符都不需要转义
参考 :http://deerchao.net/tutorials/regex/regex-1.htm