JavaScript字符串和正則表達(dá)式等......

?? 一昭卓、字符串


1.字符串的特點(diǎn):

同數(shù)組一樣,字符串也有下標(biāo)和長(zhǎng)度這兩個(gè)屬性,并且字符串遍歷也用for

但不同的是,獲取字符串中制定位置的字符用

str.charAt(i) ??//str變量名笨蚁,i表示字符串中的下標(biāo)


例:

??????????????????????????????var str='no zuo no die';

console.log(str.length);//獲取字符串的長(zhǎng)度

//遍歷字符串

?? ??for(var i=0;i

?? //獲取字符串中的元素

?? ???console.log(str.charAt(i));


?? //獲取指定位置字符的unicode號(hào)

?? ??console.log(str.charCodeAt(i));

?? ??}


2.字符串中的API:所有字符串中的API都無(wú)權(quán)修改原字符串,必須返回新字符串


1)toUpperCase();轉(zhuǎn)大寫(xiě) ???//案例見(jiàn)demo02 ?demo03

2) toLowerCase();轉(zhuǎn)小寫(xiě) ???//案例見(jiàn)demo02 ?demo03

3) slice(starti,endi+1);截取 ?//案例見(jiàn)demo04

4)concat(); 拼接 ????????????//案例見(jiàn)demo05

5) substring(starti,endi+1);截取 用法同slice ?只是不支持負(fù)數(shù)參數(shù)

6) substr(starti,n);截取從starti開(kāi)始的n個(gè)字符 ?//案例見(jiàn)demo07


* 7) indexOf('關(guān)鍵詞',starti);檢索一個(gè)固定關(guān)鍵詞出現(xiàn)的位置 ?

從starti開(kāi)始,查找下一個(gè)關(guān)鍵詞出現(xiàn)的位置

如果找不到括细,返回-1

如果不寫(xiě)starti,默認(rèn)從0開(kāi)始找

案例見(jiàn)demo08


* 8) lastIndexOf('關(guān)鍵詞',starti);檢索上一個(gè)固定關(guān)鍵詞出現(xiàn)的位置

從str中fromi位置開(kāi)始查找前一個(gè)"關(guān)鍵詞"出現(xiàn)的位置

如果找不到伪很,返回-1

簡(jiǎn)寫(xiě):省略starti, 表示從末尾開(kāi)始找


二、正則表達(dá)式(Regular Expression):

1.定義: ?規(guī)定字符串中出現(xiàn)規(guī)律的規(guī)則.用來(lái)檢某個(gè)字符串是否符合規(guī)則或檢測(cè)字符串

中是否包含符合規(guī)定的子字符串


2.如何聲明一個(gè)正則表達(dá)式

????????????????????var reg=/ /;

var reg=new RegExp(/正則表達(dá)式/);


驗(yàn)證是否正確用reg.test(str); ?//reg代表正則表達(dá)式奋单,str代表字符串


語(yǔ)法:

1.最簡(jiǎn)單的正則就是字符集原文 案例見(jiàn)demo10

2.字符集:規(guī)定一位字符可用的備選列表 [備選字符列表] ??案例見(jiàn)demo10

3.如果字符列表中部分字符連續(xù)就可以用-省略


一位大寫(xiě)字母:[A-Z]

一位小寫(xiě)字母:[a-z]

一位字母:[A-Za-z]

一位數(shù)字:[0-9]

4.除了[^xxx]表示除了xxx都行 [^]表示除了















?? var str='no zuo no die';

?? console.log(str.length);//獲取字符串的長(zhǎng)度

?? //遍歷字符串

?? for(var i=0;i

?? //獲取字符串中的元素

?? console.log(str.charAt(i));

?? //獲取指定位置字符的unicode號(hào)

?? console.log(str.charCodeAt(i));

?? }





?? var str='no zuo no die';

?? //轉(zhuǎn)大寫(xiě)

?? var str1=str.toUpperCase();

?? console.log(str1);


?? var strs='NO ZUO NO DIE';

?? //轉(zhuǎn)小寫(xiě)

?? var strs1=strs.toLowerCase();

?? console.log(strs1);







?? var code='EaB4';

?? //請(qǐng)用戶反復(fù)輸入驗(yàn)證碼是掰,如果輸入不正確就提示錯(cuò)誤,再?gòu)男螺斎?/p>

?? while(prompt('請(qǐng)輸入驗(yàn)證碼'+code).toUpperCase()!=code.toUpperCase()){


?? alert('輸入錯(cuò)誤辱匿,請(qǐng)從新輸入');


?? }

?? alert('驗(yàn)證通過(guò)');









?? //slice(strati,endi+1);

?? //1.含頭不含尾

?? //2.可以省略第二個(gè)參數(shù)相當(dāng)于從starti開(kāi)始一直截取到結(jié)尾

?? //3.如果兩個(gè)參數(shù)都省略相當(dāng)于復(fù)制原字符串

?? //4.支持負(fù)數(shù)參數(shù)

?? var str='no zuo no die';

?? // ??????0123456789

?? // var strs=str.slice(1,5);

?? //省略第一個(gè)參數(shù)

?? ???// var strs=str.slice(1);

?? //兩個(gè)參數(shù)都省略

?? ???// var strs=str.slice();

?? //支持負(fù)數(shù)參數(shù)

?? ??????var strs=str.slice(-5,-3);

?? console.log(strs);









?? //concat();拼接

?? var str='no zuo no die';

?? var str2='哈哈哈';

?? // var strs=str.concat('火火火火');


?? //兩個(gè)字符串拼接

?? var strs=str.concat(str2);

?? console.log(strs);











?? //substring(strati,endi+1);

?? //1.含頭不含尾

?? //2.可以省略第二個(gè)參數(shù)相當(dāng)于從starti開(kāi)始一直截取到結(jié)尾

?? //3.如果兩個(gè)參數(shù)都省略相當(dāng)于復(fù)制原字符串

?? var str='no zuo no die';

?? // ??????0123456789

?? var strs=str.slice(1,5);

?? //省略第一個(gè)參數(shù)

?? ???// var strs=str.slice(1);

?? //兩個(gè)參數(shù)都省略

?? ???// var strs=str.slice();

?? console.log(strs);





?? //substr(starti,n);截取 從starti開(kāi)始截取n個(gè)

?? var str='no zuo n die';

?? var strs=str.substr(1,3);

?? console.log(strs);







??? //indexOf('關(guān)鍵詞',starti);

?? var str='no zuo no die';

?? // var strs=str.indexOf('no',2);

?? //如果找不到,返回-1

?? // var strs=str.indexOf('on',2); ?

?? //如果不寫(xiě)starti,默認(rèn)從0開(kāi)始找

?? var strs=str.indexOf('no');

?? console.log(strs);







?? //lastIndexOf('關(guān)鍵詞',starti);

?? var str='no zuo no die';

?? // var strs=str.lastIndexOf('no',2);

?? //如果找不到炫彩,返回-1

?? // var strs=str.lastIndexOf('on',2); ?

?? //如果不寫(xiě)starti,默認(rèn)從末尾開(kāi)始找

?? var strs=str.lastIndexOf('no');

?? console.log(strs);











?? //最簡(jiǎn)單的正則就是關(guān)鍵字原文

?? // var str='no zuo no die';

?? // var reg=/no/;

?? // var result=reg.test(str);

?? // console.log(result);


?? //字符集:規(guī)定一位字符可用的備選列表[字符列表]

?? // var str=prompt('請(qǐng)輸入....');

?? // var reg=/[135]/;

?? // var result=reg.test(str);

?? // console.log(result);


?? //如果字符列表中部分字符連續(xù)就可以用-省略

?? // var str=prompt('請(qǐng)輸入....');

?? // var reg=/[A-Za-z]/;

?? // var result=reg.test(str);

?? // console.log(result);


?? //[^]除了

?? var str=prompt('請(qǐng)輸入....');

?? var reg=/[^A-Za-z]/;

?? var result=reg.test(str);

?? console.log(result);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末匾七,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子江兢,更是在濱河造成了極大的恐慌昨忆,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杉允,死亡現(xiàn)場(chǎng)離奇詭異邑贴,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)叔磷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門拢驾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人改基,你說(shuō)我怎么就攤上這事繁疤。” “怎么了秕狰?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,723評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵稠腊,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我鸣哀,道長(zhǎng)架忌,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,357評(píng)論 1 283
  • 正文 為了忘掉前任我衬,我火速辦了婚禮叹放,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘挠羔。我一直安慰自己许昨,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布褥赊。 她就那樣靜靜地躺著糕档,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上速那,一...
    開(kāi)封第一講書(shū)人閱讀 49,760評(píng)論 1 289
  • 那天俐银,我揣著相機(jī)與錄音,去河邊找鬼端仰。 笑死捶惜,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的荔烧。 我是一名探鬼主播吱七,決...
    沈念sama閱讀 38,904評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鹤竭!你這毒婦竟也來(lái)了踊餐?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,672評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤臀稚,失蹤者是張志新(化名)和其女友劉穎吝岭,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體吧寺,經(jīng)...
    沈念sama閱讀 44,118評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡窜管,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了稚机。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片幕帆。...
    茶點(diǎn)故事閱讀 38,599評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖赖条,靈堂內(nèi)的尸體忽然破棺而出蜓肆,到底是詐尸還是另有隱情,我是刑警寧澤谋币,帶...
    沈念sama閱讀 34,264評(píng)論 4 328
  • 正文 年R本政府宣布仗扬,位于F島的核電站,受9級(jí)特大地震影響蕾额,放射性物質(zhì)發(fā)生泄漏早芭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評(píng)論 3 312
  • 文/蒙蒙 一诅蝶、第九天 我趴在偏房一處隱蔽的房頂上張望退个。 院中可真熱鬧,春花似錦调炬、人聲如沸语盈。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,731評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)刀荒。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間缠借,已是汗流浹背干毅。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,956評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留泼返,地道東北人硝逢。 一個(gè)月前我還...
    沈念sama閱讀 46,286評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像绅喉,于是被迫代替她去往敵國(guó)和親渠鸽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容