一、字符串
1.字符串的特點:
同數(shù)組一樣,字符串也有下標(biāo)和長度這兩個屬性,并且字符串遍歷也用for
但不同的是,獲取字符串中制定位置的字符用
str.charAt(i) ??//str變量名,i表示字符串中的下標(biāo)
例:
var str='no zuo no die';
console.log(str.length);//獲取字符串的長度
//遍歷字符串
?? ??for(var i=0;i<str.length;i++){
?? //獲取字符串中的元素
?? ???console.log(str.charAt(i));
?? //獲取指定位置字符的unicode號
?? ??console.log(str.charCodeAt(i));
?? ??}
2.字符串中的API:所有字符串中的API都無權(quán)修改原字符串,必須返回新字符串
1)toUpperCase();轉(zhuǎn)大寫 ???//案例見demo02 ?demo03
2) toLowerCase();轉(zhuǎn)小寫 ???//案例見demo02 ?demo03
3) slice(starti,endi+1);截取 ?//案例見demo04
4)concat(); 拼接 ????????????//案例見demo05
5) substring(starti,endi+1);截取 用法同slice ?只是不支持負數(shù)參數(shù)
6) substr(starti,n);截取從starti開始的n個字符 ?//案例見demo07
* 7) indexOf('關(guān)鍵詞',starti);檢索一個固定關(guān)鍵詞出現(xiàn)的位置 ?
從starti開始,查找下一個關(guān)鍵詞出現(xiàn)的位置
如果找不到,返回-1
如果不寫starti,默認(rèn)從0開始找
案例見demo08
* 8) lastIndexOf('關(guān)鍵詞',starti);檢索上一個固定關(guān)鍵詞出現(xiàn)的位置
從str中fromi位置開始查找前一個"關(guān)鍵詞"出現(xiàn)的位置
如果找不到,返回-1
簡寫:省略starti, 表示從末尾開始找
二、正則表達式(Regular Expression):
1.定義: ?規(guī)定字符串中出現(xiàn)規(guī)律的規(guī)則.用來檢某個字符串是否符合規(guī)則或檢測字符串
中是否包含符合規(guī)定的子字符串
2.如何聲明一個正則表達式
????????????????????var reg=/ /;
var reg=new RegExp(/正則表達式/);
驗證是否正確用reg.test(str); ?//reg代表正則表達式,str代表字符串
語法:
1.最簡單的正則就是字符集原文 案例見demo10
2.字符集:規(guī)定一位字符可用的備選列表 [備選字符列表] ??案例見demo10
3.如果字符列表中部分字符連續(xù)就可以用-省略
一位大寫字母:[A-Z]
一位小寫字母:[a-z]
一位字母:[A-Za-z]
一位數(shù)字:[0-9]
4.除了[^xxx]表示除了xxx都行 [^]表示除了
練習(xí)1: ?驗證碼大小寫
????????????while(true){
????????????????var num="aBc3";
var str=prompt('請輸入驗證碼'+num);
????????????????num=num.toUpperCase();
????????????????str=str.toUpperCase();
????????????????if(num==str){
alert('驗證成功');
????????????????????break;
????????????????}else{
alert('驗證失敗,請重新輸入');
????????????????}
????????????}