0

下面的代码是做什么的?请逐行解释。

 x="c_name";
 y=x.replace(/^\s+|\s+$/g,"");

如果只给出 x.replace(/^\s/) ,则替换方法将替换字符串开头的空格字符。但是那些添加参数的含义/是什么?是否“|” 在替换方法中的意思是“或”?请逐行解释

4

3 回答 3

0
 y=x.replace(/^\s+|\s+$/g,"");

意思如下:

并用任何东西代替它们。

g标志意味着它会替换所有匹配项,而不仅仅是第一个匹配项。

也就是说,它会修剪字符串开头和结尾的空白。

于 2012-12-21T10:32:39.210 回答
0

它在字符串的开头或结尾删除任意数量的空格。

它可以读作

  • ^\s+: 开头的一些空格
  • |: 或者
  • \s+$: 最后一些空格
  • g: 他们全部

请参阅MDN 文档中的正则表达式

它可能在您的代码中,因为一些旧浏览器(IE8-)没有修剪功能。

于 2012-12-21T10:32:43.227 回答
0

MDN 文档

^- 匹配输入的开头。
\s- 匹配单个空白字符,包括空格、制表符、换页符、换行符和其他 unicode 空格。
x|y- 匹配 x 或 y。
+- 匹配前一项 1 次或多次。
$- 匹配输入的结尾。

所以它基本上是旧浏览器的trim()函数。

于 2012-12-21T10:35:53.060 回答