JS如何过滤空格

lwife 2010-01-31 12:06:18
如何过滤 这种空格,最好用正则

例如:中央  电视 台


怎么过滤掉所有的 
...全文
371 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xmliy 2010-01-31
  • 打赏
  • 举报
回复
 在textarea中表现为Unicode字符的空格,所以,要过滤所有空格可以试试:

replace(/( )|\s|\u00a0/g, '')
lwife 2010-01-31
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yandefa 的回复:]
JScript codereplace(/ /g,"");
[/Quote]

奇怪,放在文本框中就不行了


<textarea name="s1" id="s1">中央  电视 台</textarea>

<script type="text/javascript">
var str = document.getElementById('s1').value;
//var str = '中央  电视 台';
test = str.replace(/ /g,'');
alert(test);
</script>


相同的正则过滤,为什么放入<textarea>中就不行
alpha 2010-01-31
  • 打赏
  • 举报
回复
replace(/ /g, "");  
JavaAlpha 2010-01-31
  • 打赏
  • 举报
回复
<script    language=javascript>  

function HTMLEnCode(str)
{
var s = "";
if (str.length == 0) return "";
s = str.replace(/&/g, ">");
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/ /g, " ");
s = s.replace(/\'/g, "'");
s = s.replace(/\"/g, """);
s = s.replace(/\n/g, "<br>");
return s;
}
function HTMLDeCode(str)
{
var s = "";
if (str.length == 0) return "";
s = str.replace(/>/g, "&");
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/ /g, " ");
s = s.replace(/'/g, "\'");
s = s.replace(/"/g, "\"");
s = s.replace(/<br>/g, "\n");
return s;
}
</script>
JavaAlpha 2010-01-31
  • 打赏
  • 举报
回复
<script type="text/javascript">
var str = '中央  电视 台';
test = str.replace(" ","");
alert(test);
</script>

试试看
lwife 2010-01-31
  • 打赏
  • 举报
回复
楼上二位有试过么?

<script type="text/javascript">
var str = '中央  电视 台';
test = str.replace(/^\s+/,"");
alert(test);
</script>


我是要过滤 这种形式的空格
wkzb008 2010-01-31
  • 打赏
  • 举报
回复
正则:replace(/^\s+/,"")
alpha 2010-01-31
  • 打赏
  • 举报
回复
参考 
1: 过滤首尾空格trim、2:过滤左边空格ltrim 3:过滤右边空格

一:用正则方法写成三个函数.

<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>
alpha 2010-01-31
  • 打赏
  • 举报
回复
function LTrim() { return this.replace(/^\s+/,""); } 
Alien 2010-01-31
  • 打赏
  • 举报
回复
这样来吧,试一下,应该可以的:

function filter(sValue){
var reg = / |\s/g;
return sValue.replace(reg,"");
}
lwife 2010-01-31
  • 打赏
  • 举报
回复
哪位兄弟帮帮我,过滤掉<textarea>中的 
lwife 2010-01-31
  • 打赏
  • 举报
回复
还是xmliy老兄的方法可行,一个\u00a0直切要害!

不明白为什么 在textarea中表现为Unicode字符的空格

下面代码用xmliy的方法测试成功
<textarea name="s1" id="s1">中央  电视 台</textarea>

<script type="text/javascript">
var str = document.getElementById('s1').value;
test = str.replace(/( )|\s|\u00a0/g,'');
alert(test);
</script>

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧