JavaScript的字符串定义及实例

来源:互联网 发布:苹果mac自有办公软件 编辑:程序博客网 时间:2024/06/06 15:00

字符串

定义:定义一个变量,然后直接将字符串赋值给它。

var str = "abc123";

字符串实际上是字符组成的数组,所以数组的方法它基本都有。

(1)访问字符串里面的字符

a.数组方式:str[i];

b.字符串特有的方式:charAt(i)。

(2)查找

a. 数组方式:indexof

b. 字符串方式:search()方法:传入参数(要搜索的子串),返回子串的第一个字符在父串的下标。这个方法对大小写敏感。

search方法的功能比indexof更强大,它可以使用正则表达式形式来查找。

(3)取子串

a. 数组方式:slice();

b. 字符串特有的方法;

substr(start,length);传入参数(第一个参数,开始截取的下标,如果没有第二个参数,它就一直取到最后)(第二个参数,截取的长度)

substring(start,end)传入两个参数,第一个参数,开始截取的下标,第二个参数,截取结束的下标。

(4)替换

数组方式:splice

字符串方式:replace()替换,传入的参数(第一个参数被替换的子串)(第二个参数是新的子串)

var str = "hello world";
    
strstr.replace("world","china");
alert(str);

toUpperCase():小写字母转化为大写字母

var str = prompt("请输入一个英文字符串");//abc
str str.toUpperCase();
alert(str); //ABC

toLowerCase():大写转化为小写。

var str = prompt("请输入一个英文字符串");//ABC
str str.toLowerCase();
alert(str); //abc

trim()方法:去除字符串首尾的空格符

var str = "               请输入一个英文字符串              ";
str =str.trim();
alert(str);

split(x):字符串的分割。用字符串“x”进行分割。分割之后是一个数组.

数组有一个toString方法,将数组转换成字符串,元素之间用逗号隔开

var "a b c";
var resulta.split(" ");
alert(result);//["a","b","c"]

日期

定义:

//var d = new Date();
var new Date(2017,3,22,8,30,22);

不给参数,定义的日期为执行这条指令时那一刻的系统日期。

当然也可以指定年月日时分秒参数,但是要特别注意的是月从0开始,即0表示1月

修改日期分量:

setYear、setMonth、setDate……

获取日期分量

getYear、getMonth

getMilliseconds是获取毫秒分量

getTime获取的是从1970-1-1 00:00:00至指定日期所经历的毫秒数。

日期转换成字符串

var new Date(2017,3,22,8,30,22,500);
document.write(d.toString()+"<br>");
document.write(d.toDateString()+"<br>");
document.write(d.toTimeString()+"<br>");
document.write(d.toLocaleDateString()+"<br>");
document.write(d.toLocaleTimeString()+"<br>");
document.write(d.toUTCString()+"<br>");

日期运算

 d1>d2

d1-d2:两个日期相隔的毫秒数

便捷计算某月天数的方法

var month 2;
var newDate(2017,month,0);
document.write(d.getDate()+"<br>");

正则表达式

为什么要有这个正则表达式:因为查找是一个比较复杂的东西,我们更加准确快速找到自己想要的。

什么是正则表达式:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑

定义规则:1、使用/规则/修饰符   修饰符可以省略

var patt = /hellocooldog/i;

  2、新创建一个RegExp对象,给两个参数分别为规则和修饰符,修饰符可以省略

var patt new RegExp("//hello/","i")

常用的修饰符

i:不区分大小写

var str "HelloCoolDog";
var patt1 =/hellocooldog/i;

var resultstr.search(patt1);
document.write(result);
//i  不区分大小写

g:全局匹配,从找到的下一个下标开始再继续往后查找,一直到字符串结束

var patt2/o/g;
//全局查找
var result str.replace(patt2,"O");
document.write(result);

字符模式

[Hel]:从里面字符中任意一个去匹配字符串

[0-9]:匹配任意一个数字

var str = "1H2elo3lo4C5o6o7l8D9og";

var patt1/[0-9]/g;
var resultstr.match(patt1);
document.write(result);

显示图:


[a-z]:匹配所有小写字母

[A-Z]:匹配所有的大写字母

(a|x):匹配a或者x,a也能用[]来代替

var str = "1H2elo3lo4C5o6o7l8D9og";

var patt2 =  ([a-z]|[A-Z]);

显示图:


常用的元字符:

\w  :单词字符 包括所有字母和数字和下划线 w是word的缩写

var patt /\w/g;//word

\s  : 空格  s是space的缩写

var patt /\s/g;//space空格的缩写
var result str.replace(patt,"&");

\d  :  数字  digital的缩写

var patt /\d/;//Digital的缩写 代表数字

常用的量词

o+:  找到一个或者多个o

var patt/o+/;

o*: 找到0个或者多个o

var patt1 /oo*/g;//匹配0个或者多个

o?: 找到0个或者1个

var patt2 /oo?/g;//匹配0个或者1个

o{3}:指定具体的个数只有3个

var patt /o{2}/g;//指定了o的个数

o{2,3}:指定一个有范围的区间最少2个最多3个

var patt1 /o{2,3}/g;//指定至少2个最多3个

o{2,}:最少2个

var patt2 = /o{2,}/g;//最少2个

^: 必须以后面的内容开头

 $: 以什么内容结束

大概这些笔记了。

字符串

定义:定义一个变量,然后直接将字符串赋值给它。

var str = "abc123";

字符串实际上是字符组成的数组,所以数组的方法它基本都有。

(1)访问字符串里面的字符

a.数组方式:str[i];

b.字符串特有的方式:charAt(i)。

(2)查找

a. 数组方式:indexof

b. 字符串方式:search()方法:传入参数(要搜索的子串),返回子串的第一个字符在父串的下标。这个方法对大小写敏感。

search方法的功能比indexof更强大,它可以使用正则表达式形式来查找。

(3)取子串

a. 数组方式:slice();

b. 字符串特有的方法;

substr(start,length);传入参数(第一个参数,开始截取的下标,如果没有第二个参数,它就一直取到最后)(第二个参数,截取的长度)

substring(start,end)传入两个参数,第一个参数,开始截取的下标,第二个参数,截取结束的下标。

(4)替换

数组方式:splice

字符串方式:replace()替换,传入的参数(第一个参数被替换的子串)(第二个参数是新的子串)

var str = "hello world";
    
strstr.replace("world","china");
alert(str);

toUpperCase():小写字母转化为大写字母

var str = prompt("请输入一个英文字符串");//abc
str str.toUpperCase();
alert(str); //ABC

toLowerCase():大写转化为小写。

var str = prompt("请输入一个英文字符串");//ABC
str str.toLowerCase();
alert(str); //abc

trim()方法:去除字符串首尾的空格符

var str = "               请输入一个英文字符串              ";
str =str.trim();
alert(str);

split(x):字符串的分割。用字符串“x”进行分割。分割之后是一个数组.

数组有一个toString方法,将数组转换成字符串,元素之间用逗号隔开

var "a b c";
var resulta.split(" ");
alert(result);//["a","b","c"]

日期

定义:

//var d = new Date();
var new Date(2017,3,22,8,30,22);

不给参数,定义的日期为执行这条指令时那一刻的系统日期。

当然也可以指定年月日时分秒参数,但是要特别注意的是月从0开始,即0表示1月

修改日期分量:

setYear、setMonth、setDate……

获取日期分量

getYear、getMonth

getMilliseconds是获取毫秒分量

getTime获取的是从1970-1-1 00:00:00至指定日期所经历的毫秒数。

日期转换成字符串

var new Date(2017,3,22,8,30,22,500);
document.write(d.toString()+"<br>");
document.write(d.toDateString()+"<br>");
document.write(d.toTimeString()+"<br>");
document.write(d.toLocaleDateString()+"<br>");
document.write(d.toLocaleTimeString()+"<br>");
document.write(d.toUTCString()+"<br>");

日期运算

 d1>d2

d1-d2:两个日期相隔的毫秒数

便捷计算某月天数的方法

var month 2;
var newDate(2017,month,0);
document.write(d.getDate()+"<br>");

正则表达式

为什么要有这个正则表达式:因为查找是一个比较复杂的东西,我们更加准确快速找到自己想要的。

什么是正则表达式:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑

定义规则:1、使用/规则/修饰符   修饰符可以省略

var patt = /hellocooldog/i;

  2、新创建一个RegExp对象,给两个参数分别为规则和修饰符,修饰符可以省略

var patt new RegExp("//hello/","i")

常用的修饰符

i:不区分大小写

var str "HelloCoolDog";
var patt1 =/hellocooldog/i;

var resultstr.search(patt1);
document.write(result);
//i  不区分大小写

g:全局匹配,从找到的下一个下标开始再继续往后查找,一直到字符串结束

var patt2/o/g;
//全局查找
var result str.replace(patt2,"O");
document.write(result);

字符模式

[Hel]:从里面字符中任意一个去匹配字符串

[0-9]:匹配任意一个数字

var str = "1H2elo3lo4C5o6o7l8D9og";

var patt1/[0-9]/g;
var resultstr.match(patt1);
document.write(result);


显示图:


[a-z]:匹配所有小写字母

[A-Z]:匹配所有的大写字母

(a|x):匹配a或者x,a也能用[]来代替

var str = "1H2elo3lo4C5o6o7l8D9og";

var patt2 =  ([a-z]|[A-Z]);

显示图:


常用的元字符:

\w  :单词字符 包括所有字母和数字和下划线 w是word的缩写

var patt /\w/g;//word

\s  : 空格  s是space的缩写

var patt /\s/g;//space空格的缩写
var result str.replace(patt,"&");

\d  :  数字  digital的缩写

var patt /\d/;//Digital的缩写 代表数字

常用的量词

o+:  找到一个或者多个o

var patt/o+/;

o*: 找到0个或者多个o

var patt1 /oo*/g;//匹配0个或者多个

o?: 找到0个或者1个

var patt2 /oo?/g;//匹配0个或者1个

o{3}:指定具体的个数只有3个

var patt /o{2}/g;//指定了o的个数

o{2,3}:指定一个有范围的区间最少2个最多3个

var patt1 /o{2,3}/g;//指定至少2个最多3个

o{2,}:最少2个

var patt2 = /o{2,}/g;//最少2个

^: 必须以后面的内容开头

 $: 以什么内容结束