JS去掉字符串前后空格或去掉所有空格的用法
1、 去掉字符串前后所有空格:
代码如下:
1
2
3
4
|
function
Trim(str)
{
return
str.replace(/(^\s*)|(\s*$)/g,
""
);
}
|
说明:
如果使用jQuery直接使用$.trim(str)方法即可,str表示要去掉前后所有空格的字符串。
2、 去掉字符串中所有空格(包括中间空格,需要设置第2个参数为:g)
代码如下:
1
2
3
4
5
6
7
8
9
10
|
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;
}
|
3、现在大部分浏览器中基本上都支持字符串的 trim 函数,但是为了兼容不支持的浏览器,我们最好还是在 Js 文件中加入以下代码(不需要清除换行符的请删除 \n 制表符删除 \t):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
if
(!String.prototype.trim) {
/*---------------------------------------
* 清除字符串两端空格,包含换行符、制表符
*---------------------------------------*/
String.prototype.trim =
function
() {
return
this
.triml().trimr();
}
/*----------------------------------------
* 清除字符串左侧空格,包含换行符、制表符
* ---------------------------------------*/
String.prototype.triml =
function
() {
return
this
.replace(/^[\s\n\t]+/g,
""
);
}
/*----------------------------------------
* 清除字符串右侧空格,包含换行符、制表符
*----------------------------------------*/
String.prototype.trimr =
function
() {
return
this
.replace(/[\s\n\t]+$/g,
""
);
}
}
|
如果只需要 trim 函数的,可以只写一个:
1
2
3
4
5
6
7
8
9
10
|
if
(!String.prototype.trim){
/*---------------------------------------
* 清除字符串两端空格,包含换行符、制表符
*---------------------------------------*/
String.prototype.trim =
function
() {
return
this
.replace(/(^[\s\n\t]+|[\s\n\t]+$)/g,
""
);
}
}
|
使用代码:
1
|
var
str =
" abcd "
.trim();
|
JavaScript substring() 方法
定义和用法
substring() 方法用于提取字符串中介于两个指定下标之间的字符。
语法
stringObject.substring(start,stop)
参数 | 描述 |
---|---|
start | 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。 |
stop | 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。 如果省略该参数,那么返回的子串会一直到字符串的结尾。 |
返回值
一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop减 start。
说明
substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。
如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。
实例
例子 1
在本例中,我们将使用 substring() 从字符串中提取一些字符:
<script type="text/javascript"> var str="Hello world!" document.write(str.substring(3)) </script>
输出:
lo world!
例子 2
在本例中,我们将使用 substring() 从字符串中提取一些字符:
<script type="text/javascript"> var str="Hello world!" document.write(str.substring(3,7)) </script>
输出:
lo w
JavaScript substr() 方法
定义和用法
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
语法
stringObject.substr(start,length)
参数 | 描述 |
---|---|
start | 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。 |
length | 可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。 |
返回值
一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符。如果没有指定 length,那么返回的字符串包含从 start 到 stringObject 的结尾的字符。
提示和注释
注释:substr() 的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用。
重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。
重要事项:在 IE 4 中,参数 start 的值无效。在这个 BUG 中,start 规定的是第 0 个字符的位置。在之后的版本中,此 BUG 已被修正。
SQLSERVER 中使用in 传入数组参数解决方案
最近开发过程中,经常要向sql中传入一段带逗号的字符串为参数,例如:select a.* from a where a.id in(1,2,3,4,5,6);如果我们传入的参数是一个字符串,那么sqlserver则会报错,因为sqlserver中会自动将这个字符串两头加上一个单引号"'",例如'1,2,3,4,5,6',所以我们想要查询的结果集当然为空;今天,突然想到一个解决的方案,就是拼接sql,虽然是很老套的方法,但是能解决这个问题我还是很开心的;
方法如下:
public void test(int[] aaa)
{
String sql="SELECT MT.* from MANU_TASKINFO MT where MT.TASK_ID in (";
for(int m=0;m
{
sql=sql+aaa[m]+",";
}
sql=sql+aaa[aaa.length-1]+")";//这是整形数组最后一个值,要加反括号,构成完成的sql语句,所以,得单独列出来;
.........
.........
.........
}
如此拼接好的sql就不会报错或查询结果集为空了
SQL Server 如果表存在则执行删除后重建
/* SQL Server 如果表存在则执行删除后重建 */
use Budget --使用Budget数据库 go IF EXISTS(Select 1 From Sysobjects Where Name='costSeparateConfig') --查询表名costSeparateConfig是否存在 DROP table costSeparateConfig --存在则删除 GO --创建新表 CREATE TABLE costSeparateConfig( ID int IDENTITY(1,1) NOT NULL, COMPANY_ID varchar(50) NOT NULL, IS_SEP varchar(50) NULL, CREATE_BY numeric(18, 0) NULL, CREATE_DATE datetime NULL, LAST_UPDATE_BY numeric(18, 0) NULL, LAST_UPDATE_DATE datetime NULL )ON [PRIMARY] GO SET ANSI_PADDING OFF GO
/* SQL Server 如果视图存在则执行删除后重建 */ IF EXISTS(Select Name From Sysobjects Where Name='P_ExistsDropView' And Xtype='P') DROP PROC P_ExistsDropView GO Create Proc P_ExistsDropView ( @DelView Varchar(200) ) As Declare @SQLText Varchar(1000) If Exists(Select Top 1 Name From Sysobjects Where Name=@DelView And XType='V') Begin Set @SQLText='Drop View ' + @DelView Exec(@SQLText) End
·