首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在javascript中组合str.replace()表达式?

如何在javascript中组合str.replace()表达式?
EN

Stack Overflow用户
提问于 2011-11-03 14:05:01
回答 4查看 18.9K关注 0票数 18

我想把所有的表达式组合成一个,但我不知道怎么做,它需要去掉结尾的空格和开头的空格,但要把两个单词之间的空格缩短到只有一个(如果有多个单词)。谢谢

代码语言:javascript
运行
复制
var _str = document.contact_form.contact_name.value;
name_str = _str.replace(/\s+/g,' ');
str_name = name_str.replace(/\s+$/g,'');
name = str_name.replace(/^\s+/g,'');
document.contact_form.contact_name.value = name;
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-11-03 14:08:48

您可以将后两个组合为一个正则表达式:

代码语言:javascript
运行
复制
name = _str.replace(/\s+/g, ' ').replace(/^\s+|\s+$/g, '');

您还可以查看jQuery的trim方法。

说明:删除字符串开头和结尾的空格。

票数 32
EN

Stack Overflow用户

发布于 2011-11-03 14:11:16

代码语言:javascript
运行
复制
var name = _str.replace(/\s+$|^\s+/g,'').replace(/\s+/g,' '); 

您可以在正则表达式中使用|字符来匹配其两边的子表达式,并且可以将多个调用链接到.replace()

顺便说一句,别忘了用var声明所有变量。

票数 2
EN

Stack Overflow用户

发布于 2011-11-03 14:08:52

代码语言:javascript
运行
复制
document.contact_form.contact_name.value = _str.replace(/\s+/g,' ')..replace(/\s+$/g,'').replace(/^\s+/g,'');
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7990879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档