我使用简单的JavaScript正则表达式删除了双倍空格:
例如
" I am working on my Laptop. "
as
"I am working on my laptop."
为此我使用了这个功能。但它的工作。
function valid(f)
{
f.value = f.value.replace(/[^a-zA-Z\s.'-,]/gixsm, '');
f.value = f.value.replace(( /\s+/g, ' '); //remove more than 2 white spaces spaces.
f.value = f.value.replace(/^\s+|\s+$/g, ''); //remove spaces of before new line.
}
答案 0 :(得分:0)
你唯一的问题是这行中的((
加倍:
f.value.replace(( /\s+/g, ' ');
之后,一切正常。
var f = {};
f.value = " I am working on my Laptop. "
function valid(f)
{
f.value = f.value.replace(/[^a-zA-Z\s.'-,]/gixsm, '');
// notice the single paren here!
f.value = f.value.replace( /\s+/g, ' ');
f.value = f.value.replace(/^\s+|\s+$/g, '');
}
valid(f)
console.log( f.value ) // I am working on my laptop.
答案 1 :(得分:0)
这很好用
var string = " I am working on my Laptop. ";
function valid(f)
{
f = f.replace(/[^a-zA-Z\s.'-,]/gixsm, '');
f = f.replace( /\s+/g, ' '); //remove more than 2 white spaces spaces.
f = f.replace(/^\s+|\s+$/g, ''); //remove spaces of before new line.
return f;
}
document.write(valid(string));
你在第二次替换时有一个左括号。