大家可能会说js删除字符串首尾空格有什么好说的, 哪个不会啊。确实,大家应该都会, 现在浏览器都支持, 不支持的可以使用ployfill,代码如下

if (!String.prototype.trim) {

String.prototype.trim = function () {

return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');

};

}

之所以写这篇文章, 是我从java处得到了启发。大多的ployfill都会有恼人的正则, 真的很难理解。我来贴下java的trim

public String trim() {

int len = value.length;

int st = 0;

char[] val = value; /* avoid getfield opcode */

while ((st < len) && (val[st] <= ' ')) {

st++;

}

while ((st < len) && (val[len - 1] <= ' ')) {

len--;

}

return ((st > 0) || (len < value.length)) ? substring(st, len) : this;

}

大家应该都能看得懂, java源码认为asc码小于' '都是空格字符,找到头部不是空格字符的索引, 再获取尾部不是空格字符的索引, 中间就是我们trim之后的字符了。那我来写一个js的trim

if (!String.prototype.trim) {

String.prototype.trim = function () {

var len = this.length;

var st = 0;

while((st < len) && (this[st] <= ' ')) {

st++;

}

while((st < len) && (this[len - 1] <= ' ')){

len--;

}

return ((st > 0) || (len < this.length)) ? this.substring(st, len - st) : this;

};

}

js 字符串删除首尾_js去除字符串首尾空格相关推荐

  1. js 减去字符串_js 去除字符串空格符

    1 通过replace正则匹配方法 去除字符串内所有的空格:str = str.replace(/\s*/g,""); 去除字符串内两头的空格:str = str.replace( ...

  2. java去除前后空格_js去除字符串前后空格的多种方法

    js去除字符串前后空格的五种方法. 第一种:循环检查替换 复制代码 代码示例: //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } ...

  3. java字符串去重复_java去除字符串中重复、不重复、消除重复后字符

    java去除字符串中重复.不重复.消除重复后字符 import java.util.HashSet; import java.util.Set; public class Main { public ...

  4. java字符串去掉中文_Java——去除字符串中的中文

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class RemoveStrChinese { priv ...

  5. MySQL 字符串删除表情符_字符串中Emoji表情处理

    吃了经验的亏,因为Emoji表情引起的项目bug被撸主遇到两次了,总有一些调皮的小朋友爱用表情来搞点事.第一次把当时那个表改为utf8mb4解决了,第二次说啥都不好使.网上找了半天,发现好多人不去实验 ...

  6. mysql 去除全角空格_去除字符串内多余空格

    倒数第二行 就是去除多余空格  原本最后一种写法是网上找来的 可是根本不好使 \\1  匹配数字1或一次吧 (我有点记不清了) "\s" 匹配非空字符 "\x20&quo ...

  7. stringstream去除字符串空格的用法

    stringstream具有类型转换,字符串拼接,以及去除字符串中间的空格等功能 去除字符串中间的空格:把字符串存入stringstream中,就会自动以空格作为分隔符,然后每次从stringstre ...

  8. js 字符串删除首尾_JavaScript trim 实现去除字符串首尾指定字符的简单方法

    实例如下: String.prototype.trim = function (char, type) { if (char) { if (type == 'left') { return this. ...

  9. js去除字符串首尾空格

    说明 JavaScript 正则表达式 g.i.m分别代表的意思 g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即 停止: i:表示不区分大小写(case-i ...

最新文章

  1. 清华学霸震撼演讲:拼尽所有力气,只为给梦想一个机会!
  2. 求马鞍点java_二维数组马鞍点求解算法
  3. php的框架目录,Laravel 框架目录结构
  4. 【Linux病毒】腾讯云 cron、sshd 进程CPU占用超95%(亡命徒 Outlaw 僵尸网络攻击)问题排查及处理步骤
  5. SpringBoot自定义参数
  6. 网页制作代码模板_科普:关于网页设计的4个基础小知识
  7. 光纤收发器出现死机故障怎么解决
  8. Linux命令终端提示符显示-bash-4.2#解决方法【转载】
  9. Mock Server利器 - Moco
  10. git reset hard/soft/mixed区别
  11. linux 复制文件到另一个目录命令_每天一条Linux命令(21) scp (远程文件复制)
  12. 369Cloud控制台、IDE、组件、引擎升级全面解析
  13. 基于SSM的校园帮系统
  14. 【目标定位】基于matlab去偏卡尔曼滤波目标定位仿真【含Matlab源码 140期】
  15. 勒索病毒是什么?防勒索病毒我们该怎么做?
  16. unity抗锯齿关闭
  17. uniapp 下载视频到本地
  18. 产品目标—在敏捷团队中使用目标和关键结果(OKRs)
  19. LVGL在线字体转换教程
  20. Qt 系统下的qm翻译文件

热门文章

  1. paper 94:视觉领域博客资源1之中国部分
  2. 统计假设检验中的P值及置信区间理解
  3. 在spring boot中使用@WebFilter配置filter(包括排除URL)
  4. 当Excel遇到在线表格,看如何轻松解决办公难题 ?
  5. Hadoop HFDS 的 Shell 操作
  6. 解决Pycharm出现的Debug无法正常运行(Frames are not available)的问题
  7. c++输入10个数/输入n个数,求其平均值
  8. Git LFS(Large File Storage)使用简介
  9. 新媒体跨考计算机,跨专业考研求助
  10. AR隐形眼镜来了,一部手机的价格,正式开启人体佩戴测试