2011-05-24 216 views
1

我想建设一个正则表达式找到ACII码JavaScript的正则表达式匹配ASCII

到目前为止,我想出了这个帮助,http://jsfiddle.net/G7cab/

但你会发现,我没有捕捉所有符合此表达式的组。

我将不胜感激一些帮助 非常感谢提前。

+2

当选答案中的方法你到底想要达到什么目的? – Albireo 2011-05-24 12:00:11

+0

从我可以看到你试图匹配HTML实体 - 你是否试图从字符串中删除它们? – Liv 2011-05-24 12:03:22

+0

你的意思是“HTML实体”吗? – 2011-05-24 12:07:36

回答

3

下面是一个较短的形式(我的理解你)要根据你的提琴信息:

var s = '' ^ hola tio, que tal estas? !' 
      .replace(/(&#\d+;)/g, 
      function(a){ 
       return String.fromCharCode(a.substr(2,a.length-3)); 
      } 
      ); 
alert(s); //=> '^hola tio, que tal estas? ! 

所以,正则表达式这里是/(&#\d+;)/g

顺便说一下,&[#num][name];被称为(数字)html entities。此处的代码仅适用于此类实体(因此,不适用于名称为html的实体,如©(©)等)。如果你想这样做(在浏览器中),使用this SO question

+0

感谢所有的答案,非常感谢! (并且对于HTML实体的混淆抱歉) – 2011-05-24 13:18:24