javascript过滤空格

本文介绍了一种实现JavaScript中字符串两端、左侧及右侧空白字符去除的方法。通过使用正则表达式,实现了trim()、ltrim()和rtrim()三个实用函数,分别用于删除字符串两端、左侧和右侧的空白字符。
<script type="text/javascript">
function trim(str){ //删除左右两端的空格
return str.replace(/(^\s*)|(\s*$)/g, "");
}
function ltrim(str){ //删除左边的空格
return str.replace(/(^\s*)/g,"");
}
function rtrim(str){ //删除右边的空格
return str.replace(/(\s*$)/g,"");
}
</script>
空格过滤在不同场景下有不同的方法和实现: 1. **Java后端全局接口入参去除前后空格**:可通过过滤器Filter实现。当需要后端对全局入参进行去前后空格处理以便进一步查询时,就可以采用这种方式。例如前端搜【" 测试 "】,后端将其转为【测试】[^1]。 2. **利用JavaScript的String对象实现字符串空格过滤**:可以利用String对象的属性和方法实现过滤字符串前后的空格。例如: ```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, ''); // 去除右边空格 }; ``` 以下是测试代码展示: ```javascript console.log("01,02,03有空格,在此处仅作为输出后参考04,05,06是否有空格"); console.log(" a(您好01,输出前ab左右各有七个空格,输出有没有)b "); var message04 = " a(您好04,输出前ab左右各有七个空格,输出有没有)b "; console.log(message04.trim()); console.log(" ab(您好02,输出前a左面有七个空格,输出有没有)"); var message05 = " ab(您好05,输出前a左面有七个空格,输出有没有)"; console.log(message05.ltrim()); console.log("(您好03,输出前b后面有七个空格,输出有没有)ab "); var message06 = "(您好06,输出前b右面有七个空格,输出有没有)ab "; console.log(message06.rtrim()); ``` 此代码定义了`trim`、`ltrim`、`rtrim`方法分别用于去除字符串左右两边、左边、右边的空格,并进行了相应的测试输出[^2]。 3. **C语言过滤字符串空格**:将`scanf`作为`while`循环的条件,每次循环截至就意味着读完了空格前的字符串,然后打印字符串和一个空格,实现过滤空格。示例代码如下: ```c #include <stdio.h> // 2047过滤字符串 int main() { char s[205] = { 0 }; while ((scanf("%s", s))!= EOF) { printf("%s ", s); } return 0; } ``` 该代码不断读取字符串,直到文件结束符(EOF),并打印每个读取到的字符串和一个空格[^3]。 4. **C++过滤多余空格**:使用`cin`输入,`cin`输入遇空格或换行中止,用`while`循环重复输入字符(没有输入空格),并打印每个字符串和一个空格。示例代码如下: ```cpp #include<bits/stdc++.h> using namespace std; int main() { char s[205]; while (cin >> s) { cout << s << " "; } return 0; } ``` 此代码过滤掉句子中多个连续空格,只留下一个[^5]。 5. **Input输入框过滤空格**:Input输入框还有一个设置不能输入空格的方法,可以结合`.trim`使用。示例代码如下: ```html <input type="text" v-model="test00" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> ``` 该代码在输入框输入时,通过`onkeyup`事件实时去除输入值的前后空格[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值