剑指offer题2

144 阅读1分钟

请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

function replaceSpace(str)

{

return str.replace(/\s/g, '%20');
//或者
//var reg=new RegExp(" ","g");
//var newstr=str.replace(reg,"%20");
//return newstr;

}

由此再复习了一遍正则表达式 在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。

search() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。

replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

【RegExp 对象】 正则表达式是描述字符模式的对象。

正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。

语法

var patt=new RegExp(pattern,modifiers);

或者更简单的方式:

var patt=/pattern/modifiers;

pattern(模式) 描述了表达式的模式

modifiers(修饰符) 用于指定全局匹配g、区分大小写i的匹配和多行匹配m