01.插入

参数说明:str表示原字符串变量,flg表示要插入的字符串,sn表示要插入的位置

function insert_flg(str,flg,sn){

var newstr="";

for(var i=0;i

var tmp=str.substring(i, i+sn);

newstr+=tmp+flg;

}

return newstr;

}

删除最后一位字符

s=s.substring(0,s.length-1)

删除指定位置的字符 x代表要删除的位置 代表删除字符的个数

str = str.substring(0,x) + str.substring(x+num,str.length);

删除指定字符

var str="xxxxxxxxabcxxxxxxxxxxxx";

var pattern = "abc";

str = str.replace(new RegExp(pattern), "");

console.log(str);

运行结果就是xxxxxxxxxxxxxxxxxxxx

指定位置替换字符串


if(allstr.substring(start-1,end-1) == str){

return allstr.substring(0,start-1)+changeStr+allstr.substring(end,allstr.length);

}else{

allstr;

}

}

concat

将两个或多个字符的文本组合起来,返回一个新的字符串。

var a = "hello";

var b = ",world";

var c = a.concat(b);

alert(c);

//c = "hello,world"

indexOf

返回字符串中一个子串第一处出现的索引(从左到右搜索)。如果没有匹配项,返回 -1 。

var index1 = a.indexOf("l");

//index1 = 2

var index2 = a.indexOf("l",3);

//index2 = 3

charAt

返回指定位置的字符。

var get_char = a.charAt(0);

//get_char = "h"

lastIndexOf

返回字符串中一个子串最后一处出现的索引(从右到左搜索),如果没有匹配项,返回 -1 。

var index1 = lastIndexOf('l');

//index1 = 3

var index2 = lastIndexOf('l',2)

//index2 = 2

match

检查一个字符串匹配一个正则表达式内容,如果么有匹配返回null。

var re = new RegExp(/^\w+$/);

var is_alpha1 = a.match(re);

//is_alpha1 = "hello"

var is_alpha2 = b.match(re);

//is_alpha2 = null

substring

返回字符串的一个子串,传入参数是起始位置和结束位置。

var sub_string1 = a.substring(1);

//sub_string1 = "ello"

var sub_string2 = a.substring(1,4);

//sub_string2 = "ell"

substr

返回字符串的一个子串,传入参数是起始位置和长度

var sub_string1 = a.substr(1);

//sub_string1 = "ello"

var sub_string2 = a.substr(1,4);

//sub_string2 = "ello"

replace

用来查找匹配一个正则表达式的字符串,然后使用新字符串代替匹配的字符串。

var result1 = a.replace(re,"Hello");

//result1 = "Hello"

var result2 = b.replace(re,"Hello");

//result2 = ",world"

search

执行一个正则表达式匹配查找。如果查找成功,返回字符串中匹配的索引值。否则返回 -1 。

var index1 = a.search(re);

//index1 = 0

var index2 = b.search(re);

//index2 = -1

slice

提取字符串的一部分,并返回一个新字符串(与 substring 相同)。

var sub_string1 = a.slice(1);

//sub_string1 = "ello"

var sub_string2 = a.slice(1,4);

//sub_string2 = "ell"

split

通过将字符串划分成子串,将一个字符串做成一个字符串数组。

var arr1 = a.split("");

//arr1 = [h,e,l,l,o]

length

返回字符串的长度,所谓字符串的长度是指其包含的字符的个数。

var len = a.length();

//len = 5

toLowerCase

将整个字符串转成小写字母。

var lower_string = a.toLowerCase();

//lower_string = "hello"

toUpperCase

将整个字符串转成大写字母。

var upper_string = a.toUpperCase();

//upper_string = "HELLO"

/*

******************************************

字符串函数扩充

******************************************

*/

/*

===========================================

//去除左边的空格

===========================================

*/

String.prototype.LTrim =function()

{

return this.replace(/(^\s*)/g, "");

}

/*

===========================================

//去除右边的空格

===========================================

*/

String.prototype.Rtrim =function()

{

return this.replace(/(\s*$)/g, "");

}

/*

===========================================

//去除前后空格

===========================================

*/

String.prototype.Trim =function()

{

return this.replace(/(^\s*)|(\s*$)/g, "");

}

/*

===========================================

//得到左边的字符串

===========================================

*/

String.prototype.Left =function(len)

{

if(isNaN(len)||len==null)

{

len =this.length;

}

else

{

if(parseInt(len)<0||parseInt(len)>this.length)

{

len =this.length;

}

}

return this.substr(0,len);

}

/*

===========================================

//得到右边的字符串

===========================================

*/

String.prototype.Right =function(len)

{

if(isNaN(len)||len==null)

{

len =this.length;

}

else

{

if(parseInt(len)<0||parseInt(len)>this.length)

{

len =this.length;

}

}

return this.substring(this.length-len,this.length);

}

/*

===========================================

//得到中间的字符串,注意从0开始

===========================================

*/

String.prototype.Mid =function(start,len)

{

return this.substr(start,len);

}

/*

===========================================

//在字符串里查找另一字符串:位置从0开始

===========================================

*/

String.prototype.InStr =function(str)

{

if(str==null)

{

str ="";

}

return this.indexOf(str);

}

/*

===========================================

//在字符串里反向查找另一字符串:位置0开始

===========================================

*/

String.prototype.InStrRev =function(str)

{

if(str==null)

{

str ="";

}

return this.lastIndexOf(str);

}

/*

===========================================

//计算字符串打印长度

===========================================

*/

String.prototype.LengthW =function()

{

return this.replace(/[^\x00-\xff]/g,"**").length;

}

/*

===========================================

//是否是正确的IP地址

===========================================

*/

String.prototype.isIP =function()

{

var reSpaceCheck = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;

if (reSpaceCheck.test(this))

{

this.match(reSpaceCheck);

if (RegExp.$1 <= 255 && RegExp.$1 >= 0

&& RegExp.$2 <= 255 && RegExp.$2 >= 0

&& RegExp.$3 <= 255 && RegExp.$3 >= 0

&& RegExp.$4 <= 255 && RegExp.$4 >= 0)

{

return true;

}

else

{

return false;

}

}

else

{

return false;

}

}

/*

===========================================

//是否是正确的长日期

===========================================

*/

String.prototype.isLongDate =function()

{

var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);

if(r==null)

{

return false;

}

var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);

return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);

}

/*

===========================================

//是否是正确的短日期

===========================================

*/

String.prototype.isShortDate =function()

{

var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);

if(r==null)

{

return false;

}

var d = new Date(r[1], r[3]-1, r[4]);

return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);

}

/*

===========================================

//是否是正确的日期

===========================================

*/

String.prototype.isDate =function()

{

return this.isLongDate()||this.isShortDate();

}

/*

===========================================

//是否是手机

===========================================

*/

String.prototype.isMobile =function()

{

return /^0{0,1}13[0-9]{9}$/.test(this);

}

/*

===========================================

//是否是邮件

===========================================

*/

String.prototype.isEmail =function()

{

return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);

}

/*

===========================================

//是否是邮编(中国)

===========================================

*/

String.prototype.isZipCode =function()

{

return /^[\\d]{6}$/.test(this);

}

/*

===========================================

//是否是有汉字

===========================================

*/

String.prototype.existChinese =function()

{

//[\u4E00-\u9FA5]為漢字﹐[\uFE30-\uFFA0]為全角符號

return /^[\x00-\xff]*$/.test(this);

}

/*

===========================================

//是否是合法的文件名/目录名

===========================================

*/

String.prototype.isFileName =function()

{

return !/[\\\/\*\?\|:"<>]/g.test(this);

}

/*

===========================================

//是否是有效链接

===========================================

*/

String.prototype.isUrl =function()

{

return /^http[s]?:\/\/([\w-]+\.)+[\w-]+([\w-./?%&=]*)?$/i.test(this);

}

/*

===========================================

//是否是有效的身份证(中国)

===========================================

*/

String.prototype.isIDCard =function()

{

var iSum=0;

var info="";

var sId = this;

var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙 江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖 北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"};

if(!/^\d{17}(\d|x)$/i.test(sId))

{

return false;

}

sId=sId.replace(/x$/i,"a");

//非法地区

if(aCity[parseInt(sId.substr(0,2))]==null)

{

return false;

}

var sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));

var d=new Date(sBirthday.replace(/-/g,"/"))

//非法生日

if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))

{

return false;

}

for(var i = 17;i>=0;i--)

{

iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11);

}

if(iSum%11!=1)

{

return false;

}

return true;

}

/*

===========================================

//是否是有效的电话号码(中国)

===========================================

*/

String.prototype.isPhoneCall =function()

{

return /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(this);

}

/*

===========================================

//是否是数字

===========================================

*/

String.prototype.isNumeric =function(flag)

{

//验证是否是数字

if(isNaN(this))

{

return false;

}

switch(flag)

{

case null:        //数字

case "":

return true;

case "+":        //正数

return                /(^\+?|^\d?)\d*\.?\d+$/.test(this);

case "-":        //负数

return                /^-\d*\.?\d+$/.test(this);

case "i":        //整数

return                /(^-?|^\+?|\d)\d+$/.test(this);

case "+i":        //正整数

return                /(^\d+$)|(^\+?\d+$)/.test(this);

case "-i":        //负整数

return                /^[-]\d+$/.test(this);

case "f":        //浮点数

return                /(^-?|^\+?|^\d?)\d*\.\d+$/.test(this);

case "+f":        //正浮点数

return                /(^\+?|^\d?)\d*\.\d+$/.test(this);

case "-f":        //负浮点数

return                /^[-]\d*\.\d$/.test(this);

default:        //缺省

return true;

}

}

/*

===========================================

//是否是颜色(#FFFFFF形式)

===========================================

*/

String.prototype.IsColor =function()

{

var temp        = this;

if (temp=="") return true;

if (temp.length!=7) return false;

return (temp.search(/\#[a-fA-F0-9]{6}/) != -1);

}

/*

===========================================

//转换成全角

===========================================

*/

String.prototype.toCase =function()

{

var tmp = "";

for(var i=0;i

{

if(this.charCodeAt(i)>0&&this.charCodeAt(i)<255)

{

tmp += String.fromCharCode(this.charCodeAt(i)+65248);

}

else

{

tmp += String.fromCharCode(this.charCodeAt(i));

}

}

return tmp

}

/*

===========================================

//对字符串进行Html编码

===========================================

*/

String.prototype.toHtmlEncode =function()

{

var str = this;

str=str.replace(/&/g,"&");

str=str.replace(/

str=str.replace(/>/g,">");

str=str.replace(/\'/g,"'");

str=str.replace(/\"/g,""");

str=str.replace(/\n/g,"
");

str=str.replace(/\ /g," ");

str=str.replace(/\t/g,"    ");

return str;

}

/*

===========================================

//转换成日期

===========================================

*/

String.prototype.toDate =function()

{

try

{

return new Date(this.replace(/-/g, "\/"));

}

catch(e)

{

return null;

}

}

JS字符串相关操作的更多相关文章

  1. python字符串、字符串处理函数及字符串相关操作

    python字符串.字符串处理函数及字符串相关操作 字符串介绍 python字符串表示 Python除处理数字外还可以处理字符串,字符串用单撇号或双撇号包裹: >>> 'spam e ...

  2. 【2017-04-01】JS字符串的操作、时间日期的操作、函数、事件、动画基础

    一.字符串的操作 1.转大写: s.toLowerCase(); 2.转大写: s.toUpperCase(); 3.字符串的截取: s.substr(3,4);      -从索引3开始截取,截取4 ...

  3. Python_字符串相关操作

    1.字符串切片操作: str1='hello word' startIndex=0 #开始索引位置 endIndex=5 #结束索引位置+1 step=2 #步长 print(str1[startIn ...

  4. Python3中的字符串相关操作

    Python3的字符串操作相关函数详解 字符串内建函数 1. capitalize() 将字符串中的第一个字符转换成大写,其他字母变成小写.例: >>> "hello Wo ...

  5. Python 字符串相关操作

    # 1 * 重复输出字符串 print('hello'*2) # 2 [] ,[:] 通过索引获取字符串中字符,这里和列表的切片操作是相同的,具体内容见列表 print('helloworld'[2: ...

  6. js字符串的操作

    js中字符串的使用非常普遍,以下是一些常用的方法和属性,字符串以str='abcdabc'举例. 1.length属性 获取字符串的长度,str.length返回7 2.replace()方法 str ...

  7. 初学Python——字符串相关操作

    基本字符串操作 Pyhton中字符串的格式化输出在前面已经总结了,接下来介绍一些常用的字符串操作 先定义一个字符变量,以下的操作都以此为例: name=" my name is china ...

  8. Swift3.0字符串相关操作

    以下有关字符串的常用操作都可直接复制到Xcode中进行验证,如发现错误,请在评论区留言指正! 1.字符串的定义 var str1="hello, swift." //字符串变量 相 ...

  9. python字符串相关操作

    字符串搜索相关搜索指定字符串,没有返回-1:str.find('t')指定起始位置搜索:str.find('t',start)指定起始及结束位置搜索:str.find('t',start,end)从右 ...

随机推荐

  1. Runtime - 消息发送原理

    Runtime - 消息发送原理. Objective-C运行时的核心就在于消息分派器objc_msgSend,消息分派器把选择器映射为函数指针,并调用被引用的函数. 要想理解objc_msgSend ...

  2. mysql -> 索引_07

    索引与sql语句优化 压力测试对比

  3. AdvStringGrid 复选框、goRowSelect

    var I: Integer; begin do begin AdvStringGrid1.AddCheckBox(, I, True, True); AdvStringGrid1.Cells[,I] ...

  4. Java事务管理之Spring+Hibernate

    环境与版本 除了上一篇中的hibernate的相关lib 外 Java事务管理之Hibernate 还需要加入Spring的lib 包和如下的一些依赖包 org.aopallianceorg.aspe ...

  5. 一步一步学习IdentityServer4 (5) .NETCore2.0 Swagger

    首先添加nuget: Swashbuckle.AspNetCore services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new ...

  6. Java第三阶段学习(三、字符流、转换流)

    一.字节流读取中文时出现的问题: 文件中有中文时,用字节流读取会出现乱码的问题,因为一个中文为两个字节. 二.字符编码表 编码表:其实就是生活中字符和计算机二进制的对应关系表. 1.ascii: 一个 ...

  7. 【LOJ】#2320. 「清华集训 2017」生成树计数

    题解 我,理解题解,用了一天 我,卡常数,又用了一天 到了最后,我才发现,我有个加法取模,写的是while(c >= MOD) c -= MOD 我把while改成if,时间,少了 六倍. 六倍 ...

  8. AlexNet的参数优化

    优化算法的参数 论文中使用SGD算法,基本参数设置在前面优化算法的总结中已经提到了.这里要说几个个人体会. a. 原文中输入的batch数目是256,应该Alex经过调节后的结果,我实际用到的机器性能 ...

  9. Django实战(12):增加目录页,设定统一布局

    针对上一节的新需求,界面设计师还为我们设计了一个新的界面,不仅仅是目录页,还包含了站点的整体风格,如下图: 感谢界面设计师为我们提供的“又黑又硬”的工具条,这个看起来真的很酷.下面,让我们来享用她的工 ...

  10. Dubbo中只订阅与只注册

    一:只订阅 1.场景 为方便开发测试,经常会在线下共用一个所有服务可用的注册中心,这时,如果一个正在开发中的服务提供者注册,可能会影响消费者不能正常运行. 可以让服务提供者开发方,只订阅服务(开发的服 ...