先過濾用戶輸入的內(nèi)容:代碼如下:
長沙網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、自適應(yīng)網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)自2013年起到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
其中判斷空格有兩處,一個是英文空格,一個是中文空格,在baidu下都轉(zhuǎn)為了英文空格,自己替換一下。
function trimString(string) {
if (string == null || string == "")return "";
var i = 0;
while (string.charAt(i) == ' ' || string.charAt(i) == ' ' || string.charAt(i) == '\r' || string.charAt(i) == '\n' || string.charAt(i) == '\t') {
i++;
}
string = string.substring(i);
if (string == "")return "";
i = string.length - 1;
while (string.charAt(i) == ' ' || string.charAt(i) == ' ' || string.charAt(i) == '\r' || string.charAt(i) == '\n' || string.charAt(i) == '\t') {
i--;
}
return string.substring(0, i + 1);
}
trim函數(shù):可以直接去掉字符串首尾的空格,例:xxx.trim()
正則表達式+replace函數(shù): 可以去掉字符串中所有空格,例:xxx.replace(/\s/g,'')
思路:通過正則表達式進行區(qū)配即可用javascript去掉字符串里的所有空格
代碼如下:
function?Trim(str,is_global)
{
var?result;
result?=?str.replace(/(^\s+)|(\s+$)/g,"");
if(is_global.toLowerCase()=="g")
{
result?=?result.replace(/\s/g,"");
}
return?result;
}
代碼中用到正則表達式,含義就是去掉字符串里的所有空格
正則表通常被用來檢索、替換那些符合某個模式(規(guī)則)的文本
解釋說明:/?pattern?/g?是正則字符串的語法,上述代碼中主要是這個g
g?(全文查找出現(xiàn)的所有?pattern)?
i?(忽略大小寫)?
m?(多行查找)?
可以使用split()函數(shù)進行分割,以空格分割并返回數(shù)組實例:
script language="javascript"var str="這 是 字 符 串";var arr=str.split(" ");/script這個結(jié)果的數(shù)組arr的值:arr[0]='這';arr[1]='是';arr[2]='字';arr[3]='符';arr[4]='串';
split()是javascript的String對象屬性的一個方法;
語法結(jié)構(gòu)是stringObject.split(separator,howmany),擁有兩個參數(shù),第一個參數(shù)是以什么字符進行分割,第二個參數(shù)是返回的數(shù)組的最大長度,實例:
script language="javascript"var str="這 是 字 符 串";var arr=str.split(" ",2);/script這個結(jié)果數(shù)組arr只有兩個元素:arr[0]='這';arr[1]='是';
去掉空格的本質(zhì)就是將字符串中的空字符串刪除,根據(jù)這個解決思路,我們有多種解決方法。
方法一:遍歷法。遍歷字符串中的字符保留有效字符
function?trim(str){
var?i;
var?rst?=?'';
for(i=0;istr.length;i++){
var?c?=?str.charAt(i);
if(c!=="?"){
rst?=?rst?+?c;
}
}
return?rst;
}
var?testStr?=?"?te?s?t??";
testStr?=?trim(testStr);
console.log(testStr?);
//test
方法二:利用數(shù)組。利用數(shù)組特性簡化代碼
function?trim(str){
var?chars?=?str.split("?");
return?chars.join('');
}
var?testStr?=?"?te?s?t??";
testStr?=?trim(testStr);
console.log(testStr?);
//test
方法三:遞歸法。利用正則表達式遞歸去除空格符
function?trim(str)?{
return?str.replace(/(^\s+)|(\s+$)/g,?"");
}
var?testStr?=?"?te?s?t??";
testStr?=?trim(testStr);
console.log(testStr?);
//test
方法四:利用jquery.js。如果你使用jquery,可以使用jquery里的trim函數(shù)
var?testStr?=?"?te?s?t??";
testStr?=?$.trim(testStr);
console.log(testStr?);
//test
方法一:
代碼如下:
//javascript去空格函數(shù)
function?LTrim(str){?//去掉字符串?的頭空格
var?i;
for(i=0;i?if(str.charAt(i)!="?"str.charAt(i)!="?")?break;
}
str?=?str.substring(i,str.length);?
return?str;
}
function?RTrim(str){
var?i;?
for(i=str.length-1;i=0;i--){?
if(str.charAt(i)!="?"str.charAt(i)!="?")?break;?
} str?=?str.substring(0,i+1);
return?str;
}
function?Trim(str){
return?LTrim(RTrim(str));
}
方法二:
代碼如下:
SCRIPT?LANGUAGE="JavaScript"
!--
//出處:網(wǎng)上搜集?
//made?by?yaosansi?2005-12-02
//For?more?visit?
//?Trim()?,?Ltrim()?,?RTrim()
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,?"");
}??
//--
/SCRIPT
擴展資料:
LTRIM參數(shù):string:規(guī)定要轉(zhuǎn)換的字符串。
LTRIM參數(shù):charlist:規(guī)定從字符串中刪除哪些字符。如果未設(shè)置該參數(shù),則全部刪除以下字符。
例如:
html body ?php
$str = " Hello World!";
echo "Without ltrim: " . $str;
echo "br /";
echo "With ltrim: " . ltrim($str);
? body html
輸出:Without ltrim: Hello World! With ltrim: Hello World!
如果在瀏覽器中查看源代碼,會看到以下 HTML:
html body Without ltrim: Hello World!br /With ltrim: Hello World! /body /html
參考資料來源:百度百科—LTRIM函數(shù)