0

我有一个简单的正则表达式来获取任何不是(字母)、(数字)或(%)的东西

str.indexOf(/[^a-zA-Z0-9%]/);

但是,我总是得到-1.

这是一个例子str

Check out this awesome video!

我究竟做错了什么?

4

2 回答 2

1

您不能将正则表达式放入 indexOf。改用搜索。

有关更多信息,请参阅此内容:是否有 JavaScript 的 String.indexOf() 版本允许使用正则表达式?

于 2013-03-21T12:50:50.540 回答
0
"Check out this awesome video!".replace(/./g,function(match){
  return '0x'+match.charCodeAt(0).toString(16);
});

返回字符串的十六进制表示。如果您只想转换字母数字字符,请将.正则表达式中的替换为\w.

于 2013-03-21T16:20:27.163 回答