之前就看到别人说的,正则表达式的具体用法是:
/xxx/gi
其中g表示global,i表示区分大小写等等
然后我就不小心的在例 2.1 “Javascript中match的用法举例”中使用了gi属性,结果导致程序运行不正确。
后来才看到RegExp 对象的attributes参数中的解释:
参数 attributes是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。
ECMAScript 标准化之前,不支持 m 属性。
如果pattern是正则表达式,而不是字符串,则必须省略该参数。
而我此处使用match过程中,pattern中是正则表达式,所以,不能加此gi等参数的。