欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

關(guān)于javascript正則表達(dá)式的信息

JavaScript 實(shí)現(xiàn)基礎(chǔ) 正則表達(dá)式

JavaScript通過(guò)RegExp類來(lái)支持正則表達(dá)式,舉一個(gè)最簡(jiǎn)單的例子:

十多年的黃陂網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整黃陂建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“黃陂網(wǎng)站設(shè)計(jì)”,“黃陂網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

復(fù)制代碼

代碼如下:

var

regApple

=

new

RegExp("apple");

它可以匹配一個(gè)字符串中出現(xiàn)的第一個(gè)"apple"字符串,并且對(duì)大小寫(xiě)敏感。在構(gòu)造方法中加入第二個(gè)參數(shù)"g"則代表的搜索出字符串中所有的

"apple",這里"g"代表"global"。如果第二個(gè)參數(shù)為"i",則代表著case-insensitive,匹配過(guò)程中將不考慮字母的大小寫(xiě)。將上述兩者綜合起來(lái),可以搜索出所有"apple"字符串,并且不考慮大小寫(xiě)問(wèn)題。

復(fù)制代碼

代碼如下:

var

regApple

=

new

RegExp("apple",

"gi");

正則表達(dá)式有著并不唯一的表示方法,使用Perl語(yǔ)言中的語(yǔ)法,可以將上述表達(dá)式表示為:

復(fù)制代碼

代碼如下:

var

regApple

=

/apple/gi;

創(chuàng)建了一個(gè)RegExp對(duì)象后,RegExp的方法可以構(gòu)造出不同的匹配方式,因?yàn)檎齽t表達(dá)式是對(duì)字符串進(jìn)行的操作,所以String的一些方法在構(gòu)造正則表達(dá)式的過(guò)程中也扮演著重要角色。

RegExp對(duì)象的方法

復(fù)制代碼

代碼如下:

var

sampleString

=

"Greenapple";

var

regApple

=

/apple/;

alert(regApple.test(sampleString));

上面代碼輸出的結(jié)果是"true",因?yàn)閟ampleString中包含了需要匹配的字符串"apple",這是最簡(jiǎn)單的檢測(cè)方式。有時(shí),我們需要知道匹配的詳細(xì)結(jié)果,例如:

復(fù)制代碼

代碼如下:

var

sampleString

=

"green

apples,

red

apples";

var

regApple

=

/apple/g;

var

arr

=

regApple.exec(sampleString);

通過(guò)使用exec()方法,返回的arr是關(guān)于匹配結(jié)果的一個(gè)數(shù)組,包括每一個(gè)匹配的值及其所在的段,例如上例中是"green

apples"還是"red

apples"。match()方法有著和exec()相同的功能,只是表達(dá)方式不同:

復(fù)制代碼

代碼如下:

var

sampleString

=

"green

apples,

red

apples";

var

regApple

=

/apple/g;

var

arr

=

sampleString.match(regApple);

search()方法和indexOf()比較類似,返回第一個(gè)匹配的字符串所在的位置:

復(fù)制代碼

代碼如下:

var

sampleString

=

"green

apples,

red

apples";

var

regApple

=

/apple/gi;

alert(sampleString.search(regApple));

//輸出"6"

String的方法

String的replace()方法可以將指定的字符串替換為另一個(gè)字符串:

復(fù)制代碼

代碼如下:

var

sampleString

=

"There

is

a

green

apple.";

alert(sampleString.replace("green",

"red"));

//輸出"There

is

a

red

apple."

將replace()的第一個(gè)參數(shù)替換為一個(gè)正則表達(dá)式,可以達(dá)到同樣的效果:

復(fù)制代碼

代碼如下:

var

sampleString

=

"There

is

a

green

apple.";

var

regApple

=

/apple/;

alert(sampleString.replace(regApple,

"red"));

//輸出"There

is

a

red

apple."

replace()的第二個(gè)參數(shù)可以替換為一個(gè)function(),該function()接受一個(gè)匹配字符串作為參數(shù),返回一個(gè)替換字符串。(存在疑問(wèn))

使用正則表達(dá)式可以實(shí)現(xiàn)String的split()方法相同的功能。

復(fù)制代碼

代碼如下:

var

fruit

=

"apple,pear,lemon";

var

arr

=

fruit.split(",");

使用正則表達(dá)式:

復(fù)制代碼

代碼如下:

var

fruit

=

"apple,pear,lemon";

var

reg

=

/\,/;

var

arr

=

fruit.split(reg);

javascript正則表達(dá)式

/*

@param?str?the?string?to?calc?length

@param?autotrim?auto?trim?blank?char.?default?:?false

*/

function?getAbsLength(str,?autotrim)?{

if?(typeof?str?===?'undefined')?return?0;

if?(str?==?null)?return?0;

//?trim????

var?reg_trim?=?/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;

var?reg_chinese_char?=?/[\u4e00-\u9fa5]/;

autotrim?=?!!autotrim;

str?=?autotrim???(str?+?"").replace(reg_trim,?"")?:?(str?+?"");

var?orig_len?=?str.length;

var?absLen?=?0;

for?(var?i?=?0;?i??orig_len;?i++)?{

if?(reg_chinese_char.test(str.charAt(i)))?{

//?chinese,?length=2

absLen?+=?2;

}?else?{

absLen?+=?1;

}

}

return?absLen;

}

除了中文,其它都算是一個(gè)字符的。。

javascript正則表達(dá)式怎么選擇

js正則表達(dá)式格式是 var reg = /這中間寫(xiě)匹配的格式/;

常用的匹配格式有:\s(空格)\d(數(shù)字)\w(字母數(shù)字下劃線){n}(出現(xiàn)的數(shù)量)[ab](出現(xiàn)a或b)[0-9](字符集0到9)^(第一個(gè)位置)+(出現(xiàn)一次以上)?(出現(xiàn)一次或者不出現(xiàn))

reg.test("字符串")匹配成功返回true 失敗返回false

JavaScript中可以使用正則表達(dá)式么?如果能,該如何使用呢?

首先肯定的是JavaScript中是可以使用正則表達(dá)式的。

下面我就借鑒秒秒學(xué)上的內(nèi)容,簡(jiǎn)單說(shuō)下。

在沒(méi)有了解正則表達(dá)式之前,是很難理解它的強(qiáng)大功能的,我們先來(lái)看一個(gè)在JavaScript中使用正則表達(dá)式的語(yǔ)句。

//創(chuàng)建正則表達(dá)式,這和聲明字符串很相似,但hello不是放在雙引號(hào)中,而是在雙斜杠中’//’。

var myRE = /hello/;

示例中創(chuàng)建正則表達(dá)式的代碼其實(shí)是簡(jiǎn)寫(xiě),完整寫(xiě)法為:var myRE = new RegExp(“hello”);

/*

*使用正則表達(dá)式在字符串中查找信息。

*下面代碼使用test方法匹配字符串,這里在myString中匹配myRE中的”hello”字符串,

*若myString中能匹配到test方法,則返回true,否則返回false。匹配過(guò)程是大小寫(xiě)敏

*感的。

*/

var myString = “Does this sentence have the word hello in it?”

if( myRE.test(myString) ) {

alert(“Yes”);

}

test方法只返回true和false,而使用search方法能返回”hello”在myString中第一次出現(xiàn)的下標(biāo)。

介紹了JavaScript中使用正則表達(dá)式的用法后,下面我們來(lái)說(shuō)下正則表達(dá)式本身。

在剛剛的示例中,我們用正則表達(dá)式匹配的是字符串hello。但很多時(shí)候需要匹配的字符串是比較復(fù)雜的,如電子郵箱的格式。這時(shí)我們就要使用由普通字符以及特殊字符組成的文字模式。特殊字符也許對(duì)不了解正則表達(dá)式的人來(lái)說(shuō)就是一串亂七八糟的字符,但其實(shí)就是因?yàn)橛辛诉@些亂糟糟的字符,才能使正則表達(dá)式好些的強(qiáng)大。下面我們來(lái)了解下正則表達(dá)式中的特殊字符:

通過(guò)普通字符以及特殊字符可以組成復(fù)雜的正則表達(dá)式。如下是一個(gè)逐漸復(fù)雜的示例:

其實(shí)上面的正則表達(dá)式并不算復(fù)雜。很多常用的正則表達(dá)式可以在網(wǎng)上找到,不用我們自己編寫(xiě),如:

匹配電子郵箱:/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/

匹配URL:/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/

復(fù)雜正則表達(dá)式的編寫(xiě)并不簡(jiǎn)單,題主只要先大概的了解即可,希望能幫助你入門,推薦你去一個(gè)不錯(cuò)的自學(xué)網(wǎng)站?秒秒學(xué)上過(guò)一遍基礎(chǔ)知識(shí)。

分享文章:關(guān)于javascript正則表達(dá)式的信息
URL鏈接:http://chinadenli.net/article32/dsidipc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)做網(wǎng)站網(wǎng)站改版App設(shè)計(jì)商城網(wǎng)站動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)