javascript 去字符串空格终极版(支持utf8)


Posted in Javascript onNovember 14, 2009

其实这个问题是:如果你的js本身是unicode编码,那么用正则表达式\s就可以去掉所有空白,但是如果你js是utf-8编码,那么正则就不能处理编码为160的空格了。

下面我先是正则表达式去掉编码为32的空格,再用递归的方法去掉字符串两边的unicode空格。

/** 去字符两端空格 开始 
*@author 敖士伟 
*@version v1.0 
*@date 2009/11/14 22:51 
*/ 
String.prototype.trim = function() { 
var r = this.replace(/(^\s*)|(\s*$)/g, ""); 
r = Lremoveblank(r); 
r = Rremoveblank(r); 
return r; 
} function Lremoveblank(s) { 
if (s.length == 1 && s.charCodeAt(0) == 160) 
return ""; 
if (s.charCodeAt(0) == 160) { 
s = s.substr(1, s.length - 1); 
return removeblank(s); 
} 
else { 
return s; 
} 
} 
function Rremoveblank(s) { 
if (s.length == 1 && s.charCodeAt(0) == 160) 
return ""; 
if (s.charCodeAt(s.length-1) == 160) { 
s = s.substr(0, s.length - 1); 
return Rremoveblank(s); 
} 
else { 
return s; 
} 
} 
//--去字符两端空格 结束 
//e.g. 
var a = "  a  "; 
alert("b" + a.trim() + "b");
Javascript 相关文章推荐
JQuery 应用 JQuery.groupTable.js
Dec 15 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
Jan 07 Javascript
JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
Apr 05 Javascript
Bootstrap 3 按钮标签实例代码
Feb 21 Javascript
使用 Node.js 对文本内容分词和关键词抽取
May 27 Javascript
jQuery实现模糊搜索功能的方法分析
Jun 29 jQuery
JavaScript设计模式之模板方法模式原理与用法示例
Aug 07 Javascript
vue自定义tap指令及tap事件的实现
Sep 18 Javascript
使用webpack打包后的vue项目如何正确运行(express)
Oct 26 Javascript
浅谈vue中使用编辑器vue-quill-editor踩过的坑
Aug 03 Javascript
vue pages 多入口项目 + chainWebpack 全局引用缩写说明
Sep 21 Javascript
Vue实现简单计算器
Jan 20 Vue.js
jQuery checkbox全选/取消全选实现代码
Nov 14 #Javascript
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
Nov 14 #Javascript
jquery 可排列的表实现代码
Nov 13 #Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
Nov 13 #Javascript
传智播客学习之JavaScript基础篇
Nov 13 #Javascript
用document.documentElement取代document.body的原因分析
Nov 12 #Javascript
JQuery SELECT单选模拟jQuery.select.js
Nov 12 #Javascript
You might like
PHP中运用jQuery的Ajax跨域调用实现代码
2012/02/21 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
2013/11/26 PHP
递归删除一个节点以及该节点下的所有节点示例
2014/03/19 PHP
phpmyadmin中禁止外网使用的方法
2014/11/04 PHP
JavaScript入门教程(7) History历史对象
2009/01/31 Javascript
JQuery扩展插件Validate 3通过参数设置错误信息
2011/09/05 Javascript
解决ExtJS在chrome或火狐中正常显示在ie中不显示的浏览器兼容问题
2013/01/11 Javascript
$(document).ready(function() {})不执行初始化脚本
2014/06/19 Javascript
jQuery提示效果代码分享
2014/11/20 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
2016/01/13 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
Nodejs下用submit提交表单提示cannot post错误的解决方法
2016/11/21 NodeJs
详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现
2017/03/11 Javascript
JS+Canvas绘制动态时钟效果
2017/11/10 Javascript
vuex actions传递多参数的处理方法
2018/09/18 Javascript
总结4个方面优化Vue项目
2019/02/11 Javascript
nodejs环境使用Typeorm连接查询Oracle数据
2019/12/05 NodeJs
Vue实现多页签组件
2021/01/14 Vue.js
[01:24:09]Ti4 冒泡赛第二轮DK vs C9 1
2014/07/14 DOTA
[04:52]2015国际邀请赛LGD战队晋级之路
2015/08/14 DOTA
python实现zencart产品数据导入到magento(python导入数据)
2014/04/03 Python
使用Python的Tornado框架实现一个一对一聊天的程序
2015/04/25 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
从当地商店送来的杂货:Instacart
2018/08/19 全球购物
贝尔帐篷精品店:Bell Tent Boutique
2019/06/12 全球购物
高三高考决心书
2014/03/11 职场文书
英语系本科生求职信
2014/07/15 职场文书
私人委托书格式
2014/09/10 职场文书
党的群众路线教育实践活动个人对照检查材料(乡镇)
2014/11/05 职场文书
英语通知范文
2015/04/22 职场文书
2015年审计人员工作总结
2015/05/26 职场文书
html css3不拉伸图片显示效果
2021/06/07 HTML / CSS
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
2021/08/23 HTML / CSS
一次线上mongo慢查询问题排查处理记录
2022/03/18 MongoDB
NASA 机智号火星直升机拍到了毅力号设备碎片
2022/04/29 数码科技
搭建Yolov5服务器
2022/04/30 Servers