1.正则表达式的验证
var reg = /\[em_(\d)+\]/;
var str = 'aaa[em_34]bbb';
reg.test(str) /*返回值为true;*/
使用: str.replace(/\[em_(\d)+\]/, '<img src=emotion/$1.gif />');
2.正则表达式替换
() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。后来用的时候用$1,$2引用
(\s*)表示连续空格的字符串。
[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。
{}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格。
result.message.replace(/\[em_(\d+)\]/g, '<img src="emotion/$1.gif" />');
代码说明:/正则表达式的开头和结束位置,\[代表符号[,/g结束,并且全局匹配。这行代码的是匹配字符串中[em_xx],其中xx为正整数。用$1就是正则表达式中的(\d+),
就是xx的值。就是吧表情的代号,转换成图片代码。