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 相关文章推荐
JQUERY 对象与DOM对象之两者相互间的转换
Apr 27 Javascript
jQuery对象和Javascript对象之间转换的实例代码
Mar 20 Javascript
Js冒泡事件详解及阻止示例
Mar 21 Javascript
Jquery基础教程之DOM操作
Aug 19 Javascript
JavaScript对象数组的排序处理方法
Oct 21 Javascript
jq实现左滑显示删除按钮,点击删除实现删除数据功能(推荐)
Aug 23 Javascript
Vue.js系列之项目搭建(1)
Jan 03 Javascript
详解Node.js项目APM监控之New Relic
May 12 Javascript
JavaScript实现移动端轮播效果
Jun 06 Javascript
JavaScript变量作用域_动力节点Java学院整理
Jun 27 Javascript
10个在JavaScript开发中常遇到的BUG
Dec 18 Javascript
vue-next/runtime-core 源码阅读指南详解
Oct 25 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源码之 ext/mysql扩展部分
2009/07/17 PHP
php微信支付接口开发程序
2016/08/02 PHP
php微信公众号开发之现金红包
2018/04/16 PHP
jQuery 技巧大全(新手入门篇)
2009/05/12 Javascript
ajax不执行success回调而是执行了error回调
2012/12/10 Javascript
JS保存、读取、换行、转Json报错处理方法
2013/06/14 Javascript
js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
2014/03/22 Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
2014/06/10 Javascript
javascript框架设计读书笔记之数组的扩展与修复
2014/12/02 Javascript
Nginx上传文件全部缓存解决方案
2015/08/17 Javascript
跟我学习JScript的Bug与内存管理
2015/11/18 Javascript
JavaScript入门系列之知识点总结
2016/03/24 Javascript
深入理解JavaScript中的call、apply、bind方法的区别
2016/05/30 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
2016/08/05 Javascript
总结javascript中的六种迭代器
2016/08/16 Javascript
详解nodejs微信公众号开发——4.自动回复各种消息
2017/04/11 NodeJs
浅谈在koa2中实现页面渲染的全局数据
2017/10/09 Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
2018/03/01 Javascript
详解从买域名到使用pm2部署node.js项目全过程
2018/03/07 Javascript
Python lxml模块安装教程
2015/06/02 Python
pytorch cnn 识别手写的字实现自建图片数据
2018/05/20 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
PyQt5 实现给窗口设置背景图片的方法
2019/06/13 Python
python中有关时间日期格式转换问题
2019/12/25 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
Python基于内置库pytesseract实现图片验证码识别功能
2020/02/24 Python
Python爬虫入门教程02之笔趣阁小说爬取
2021/01/24 Python
HTML5离线缓存Manifest是什么
2016/03/09 HTML / CSS
英国最大的奢侈品零售网络商城:Flannels
2016/09/16 全球购物
美国领先的商务贺卡出版商:The Gallery Collection
2018/02/13 全球购物
瑞士灯具购物网站:Lampenwelt.ch
2018/07/08 全球购物
2014自荐信的写作技巧
2014/01/28 职场文书
餐厅服务员岗位职责
2015/02/09 职场文书
家长意见和建议怎么写
2015/06/04 职场文书
python基于turtle绘制几何图形
2021/06/15 Python
利用Matlab绘制各类特殊图形的实例代码
2021/07/16 Python