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 相关文章推荐
一个简单的javascript类定义例子
Sep 12 Javascript
JavaScript中的Math 使用介绍
Apr 21 Javascript
avalonjs实现仿微博的图片拖动特效
May 06 Javascript
JavaScript判断对象是否为数组
Dec 22 Javascript
jstree的简单实例
Dec 01 Javascript
前端js弹出框组件使用方法
Aug 24 Javascript
JavaScript数据类型的存储方法详解
Aug 25 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
Dec 19 jQuery
微信小程序实现分享到朋友圈功能
Jul 19 Javascript
微信小程序签到功能
Oct 31 Javascript
vue项目打包上传github并制作预览链接(pages)
Apr 19 Javascript
Vue elementui字体图标显示问题解决方案
Aug 18 Javascript
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
根德YB400的电路分析
2021/03/02 无线电
php面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
2013/04/15 PHP
PHP在线调试执行的实现方法(附demo源码)
2016/04/28 PHP
ThinkPHP3.2.1图片验证码实现方法
2016/08/19 PHP
JS的replace方法介绍
2012/10/20 Javascript
JS通过分析userAgent属性来判断浏览器的类型及版本
2014/03/28 Javascript
JavaScript 函数的执行过程
2016/05/09 Javascript
浅谈javascript中的三种弹窗
2016/10/21 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
2017/02/13 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图和饼图的组合图效果示例【附demo源码下载】
2017/03/09 Javascript
xmlplus组件设计系列之下拉刷新(PullRefresh)(6)
2017/05/03 Javascript
NodeJS、NPM安装配置步骤(windows版本) 以及环境变量详解
2017/05/13 NodeJs
react系列从零开始_简单谈谈react
2017/07/06 Javascript
Angular5.1新功能分享
2017/12/21 Javascript
JS实现调用本地摄像头功能示例
2018/05/18 Javascript
简单易扩展可控性强的Jquery转盘抽奖程序
2019/03/16 jQuery
爬山算法简介和Python实现实例
2014/04/26 Python
Python 通过pip安装Django详细介绍
2017/04/28 Python
python 简单的绘图工具turtle使用详解
2017/06/21 Python
Python工厂函数用法实例分析
2018/05/14 Python
pycharm的console输入实现换行的方法
2019/01/16 Python
Python流行ORM框架sqlalchemy安装与使用教程
2019/06/04 Python
分析运行中的 Python 进程详细解析
2019/06/22 Python
Django将默认的SQLite更换为MySQL的实现
2019/11/18 Python
pyenv虚拟环境管理python多版本和软件库的方法
2019/12/26 Python
python中导入 train_test_split提示错误的解决
2020/06/19 Python
python文件路径操作方法总结
2020/12/21 Python
丽笙酒店官方网站:Radisson Hotels
2019/05/07 全球购物
2014年学校党建工作汇报材料
2014/11/02 职场文书
个人总结与自我评价2015
2015/03/11 职场文书
培训简讯范文
2015/07/20 职场文书
运动会开幕式致辞
2015/07/29 职场文书
社区服务活动感想
2015/08/11 职场文书
党员干部学法用法心得体会
2016/01/21 职场文书
在Windows下安装配置CPU版的PyTorch的方法
2021/04/02 Python