js trim函数 去空格函数与正则集锦


Posted in Javascript onNovember 20, 2009

但是如果项目没有用到jQuery等框架的话,js本身又没有这样的函数,我们不得不自己写这样的函数,下面是函数的具体实现:

//供使用者调用 
function trim(s){ 
return trimRight(trimLeft(s)); 
} 
//去掉左边的空白 
function trimLeft(s){ 
if(s == null) { 
return ""; 
} 
var whitespace = new String(" \t\n\r"); 
var str = new String(s); 
if (whitespace.indexOf(str.charAt(0)) != -1) { 
var j=0, i = str.length; 
while (j < i && whitespace.indexOf(str.charAt(j)) != -1){ 
j++; 
} 
str = str.substring(j, i); 
} 
return str; 
} 
//去掉右边的空白 
function trimRight(s){ 
if(s == null) return ""; 
var whitespace = new String(" \t\n\r"); 
var str = new String(s); 
if (whitespace.indexOf(str.charAt(str.length-1)) != -1){ 
var i = str.length - 1; 
while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){ 
i--; 
} 
str = str.substring(0, i+1); 
} 
return str; 
}

使用时只需调用trim函数即可。
下面是用正则的实现方法:
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
String.prototype.Trim = function() 
{ 
return this.replace(/(^\s*)|(\s*$)/g, ""); 
} 
String.prototype.LTrim = function() 
{ 
return this.replace(/(^\s*)/g, ""); 
} 
String.prototype.RTrim = function() 
{ 
return this.replace(/(\s*$)/g, ""); 
} 
//--> 
</SCRIPT> 
<input type="text" value="    前后都是空格   " id="space"> 
<input type="button" value="去前后空格" onclick="javascript:document.getElementById('space').value=document.getElementById('space').value.Trim();document.getElementById('space').select();"> 
<input type="button" value="去前空格" onclick="javascript:document.getElementById('space').value=document.getElementById('space').value.LTrim();document.getElementById('space').select();"> 
<input type="button" value="去后空格" onclick="javascript:document.getElementById('space').value=document.getElementById('space').value.RTrim();document.getElementById('space').select();"> 
<input type="button" value="还原" onclick="javascript:document.getElementById('space').value='    前后都是空格     ';">

上面的代码因为编辑器的问题,空格被替换了,所以大家请注意添加空格,测试。
Javascript 相关文章推荐
javascript 不间断的图片滚动并可点击
Jan 15 Javascript
使用IE6看老赵的博客 jQuery初探
Jan 17 Javascript
解决IE下select标签innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
May 13 Javascript
jquery实现当滑动到一定位置时固定效果
Jun 17 Javascript
jQuery经过一段时间自动隐藏指定元素的方法
Mar 17 Javascript
JavaScript生成福利彩票双色球号码
May 15 Javascript
VUE多层路由嵌套实现代码
May 15 Javascript
利用jQuery异步上传文件的插件用法详解
Jul 19 jQuery
webpack引入eslint配置详解
Jan 22 Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 Javascript
详解Vue3.0 前的 TypeScript 最佳入门实践
Jun 18 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
Nov 05 Javascript
div移动 输入框不能输入的问题
Nov 19 #Javascript
ExtJS Window 最小化的一种方法
Nov 18 #Javascript
JS获取dom 对象 ajax操作 读写cookie函数
Nov 18 #Javascript
jquery中的$(document).ready()与window.onload的区别
Nov 18 #Javascript
jQuery html()等方法介绍
Nov 18 #Javascript
JQuery toggle使用分析
Nov 16 #Javascript
JavaScript OOP类与继承
Nov 15 #Javascript
You might like
PHP.MVC的模板标签系统(四)
2006/09/05 PHP
详解WordPress开发中get_header()获取头部函数的用法
2016/01/08 PHP
Laravel框架实现的使用smtp发送邮件功能示例
2019/03/12 PHP
js 自定义的联动下拉框
2010/02/07 Javascript
js鼠标左右键 键盘值小结
2010/06/11 Javascript
js给onclick事件赋值,动态传参数实例解说
2013/03/28 Javascript
onmouseover和onmouseout的一些问题思考
2013/08/14 Javascript
jquery检测input checked 控件是否被选中的方法
2014/03/26 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
JS 实现可停顿的垂直滚动实例代码
2016/11/23 Javascript
react native与webview通信的示例代码
2017/09/25 Javascript
JavaScript常用数组操作方法,包含ES6方法
2020/05/10 Javascript
ionic4+angular7+cordova上传图片功能的实例代码
2019/06/19 Javascript
JS出现404错误原理及解决方案
2020/07/01 Javascript
js动态添加带圆圈序号列表的实例代码
2021/02/18 Javascript
基于JavaScript实现简单的轮播图
2021/03/03 Javascript
Python实现根据IP地址和子网掩码算出网段的方法
2015/07/30 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
Queue 实现生产者消费者模型(实例讲解)
2017/11/13 Python
python链接oracle数据库以及数据库的增删改查实例
2018/01/30 Python
python 从csv读数据到mysql的实例
2018/06/21 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
python 删除字符串中连续多个空格并保留一个的方法
2018/12/22 Python
python禁用键鼠与提权代码实例
2019/08/16 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
Python3内置函数chr和ord实现进制转换
2020/06/05 Python
python正则表达式 匹配反斜杠的操作方法
2020/08/07 Python
CSS3教程:新增加的结构伪类
2009/04/02 HTML / CSS
业务代表的岗位职责
2013/11/16 职场文书
工地例会施工汇报材料
2014/08/22 职场文书
授权委托书(法人单位用)
2014/09/29 职场文书
医生个人自我剖析材料
2014/10/08 职场文书
2014年底工作总结
2014/12/15 职场文书
2015年清明节网上祭英烈留言寄语
2015/03/04 职场文书
比较node.js和Deno
2021/04/27 Javascript
MySQL创建管理子分区
2022/04/13 MySQL