trim()方法的使用

此文章讲解trim在JavaScript和Sql中的用法

今天凑巧碰到了trim()的用法,笔者也是查了相关内容,并梳理一下知识点,此文章不涉及Mybatis 中的 trim标签用法
1、JavaScript

var str = "       Runoob      ";
alert(str.trim());
输出结果:
Runoob
trim() 方法用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等。

trim() 方法不会改变原始字符串。

trim() 方法不适用于 null, undefined, Number 类型。

原理是trim 利用replace 方法 也可自己定义
例:

function myTrim(s) {
  return x.replace(/^\s+|\s+$/g,' ');
} 
function myFunction() {
  var str = myTrim("   Runoob     ");
  document.write(str)
}

借鉴于JavaScript菜鸟教程           链接地址

符号含义:

\s: space, 空格

+: 一个或多个

^: 开始,^\s,以空格开始

$: 结束,以空格结束

|:或者

/g:global, 全局

replace() 替换

2、SQL Trim
SQL 中的 TRIM 函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。
TRIM( ), RTRIM( ), LTRIM( )

各种 trim 函数的语法如下:

TRIM ( [ [位置] [要移除的字串] FROM ] 字串): [位置] 的可能值为 LEADING (起头), TRAILING (结尾), or BOTH (起头及结尾)。 这个函数将把 [要移除的字串] 从字串的起头、结尾,或是起头及结尾移除。
如果我们没有列出 [要移除的字串] 是什么的话,那么会默认把空白移除。

LTRIM(字串): 将所有字串起头的指定的字符移除。

RTRIM(字串): 将所有字串结尾的指定的字符移除。
接下来以 ORACLE 数据库为例
for example
2.1 TRIM( ) 用例

select trim(leading from '   sssssssaaaa    ') leadingtrim from dual ;

sssssssaaaa      (会清除该字符串起头的空格)

如果想把起头的s去掉的话sql如下:

 select trim(leading 's' from 'sssssssaaaa   ') leadingtrim from dual ; 

aaaa     (注意此时的字符串起头不是空格而s,会清除起头的s)

同理

select trim(trailing from '   sssssssaaaa   ') trailingtrim from dual ; 

     sssssssaaaa(会清除该字符串结尾的空格)

如果想把结尾的a去掉的话sql如下:

select trim(trailing 'a' from 'sssssssaaaa') trailingtrim from dual ; 

sssssss(注意此时的字符串结尾不是空格而是a,会清除结尾的a)

select trim(both 's' from 'sssssssaaaassssss') bothtrim from dual ; 

aaaa(清除了两端的s)

2.2 RTRIM( )用例

 select rtrim('   sssssss   ') rtrim from dual;

    sssssss(将字串结尾的空白移除)

注意当想移除起头或结尾非空白字符时 利用 ltrim(string1,string2)和rtrim(string1,string2)
从字符串string1左侧(右侧)开始去除与string2字符集合中单个字符匹配的字符,直到在string1中遇上某个字符,该字符不在string2字符集合中。也就是从string1中移除string2所包含的字符,而不是移除string2整体字符串
例1:

select rtrim( 'sssssssaassss' ,'ssss') rtrim from dual;

sssssssaa(将字串结尾的s移除掉)
例2:

select rtrim( 'stssssssaassss' , 'ssssa') rtrim from dual;

st(将结尾的s和a移除掉)

2.3 LTRIM( )用例

select ltrim('   sssssss   ') ltrim from dual;

sssssss    (将字串起头的空白移除)
例1:

 select ltrim( 'sssssssaassss' ,'ssss') ltrim from dual;

aassss(将字串起头的s移除掉)
例2:

select ltrim( 'stssssssaassss'  , 'ssssa') ltrim from dual;

tssssssaassss(只将起头的s移除掉了)

  • 6
    点赞
  • 0
    评论
  • 32
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值