一個關(guān)于正則表達(dá)式的問題
更新時間:2006年12月21日 00:00:00 作者:
再補(bǔ)一個問題
(.+)、(.)+、.+不是一樣的嗎?
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
為什么上面代碼運(yùn)行結(jié)果都不一樣
有的結(jié)果還用逗號分開 是怎么回事呢
試試alert(Pattern3.exec("<p align=center onclick=dsa6>")[1])將得到6
(.)+一路匹配過來,返回的是最后匹中的結(jié)果。
+(加號)表示+前面的模式(或模式片斷)當(dāng)有至少一個、可有多個。
出現(xiàn)在正則表達(dá)式中的()所包圍的的內(nèi)容被視為模式中的子片斷,會在exec()中體現(xiàn)出來。
(.+)、(.)+、.+不是一樣的嗎?
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
為什么上面代碼運(yùn)行結(jié)果都不一樣
有的結(jié)果還用逗號分開 是怎么回事呢
復(fù)制代碼 代碼如下:
exec()返回的是匹配到符合模式的內(nèi)容的數(shù)組(由整體和按順選排列的子片斷組成),用alert顯示時會顯示數(shù)組toSting()的結(jié)果(就是用逗號隔開的字符串)。
在正則表達(dá)式中 . (點(diǎn))表示除換行符以外的任意字符(在加上m參數(shù)打開多行匹配模式時表示任意字符),用轉(zhuǎn)義符號\.表示點(diǎn)這個字符本體。
在正則表達(dá)式中 . (點(diǎn))表示除換行符以外的任意字符(在加上m參數(shù)打開多行匹配模式時表示任意字符),用轉(zhuǎn)義符號\.表示點(diǎn)這個字符本體。
復(fù)制代碼 代碼如下:
var Pattern3=/<(.)+>/i;
alert(Pattern3.exec("<p align=center onclick=dsa>")[1])
為什么得到的是a而不是p?
alert(Pattern3.exec("<p align=center onclick=dsa>")[1])
為什么得到的是a而不是p?
試試alert(Pattern3.exec("<p align=center onclick=dsa6>")[1])將得到6
(.)+一路匹配過來,返回的是最后匹中的結(jié)果。
+(加號)表示+前面的模式(或模式片斷)當(dāng)有至少一個、可有多個。
出現(xiàn)在正則表達(dá)式中的()所包圍的的內(nèi)容被視為模式中的子片斷,會在exec()中體現(xiàn)出來。
相關(guān)文章
js正則表達(dá)式講解之index屬性(RegExp對象)
index與search返回的值相同,不管是是否匹配到合適內(nèi)容,如果找到合適內(nèi)容則index為匹配內(nèi)容其實字符的起始位置,如果沒有找到則返回-12012-10-10自定義ubb代碼,preg_replace()函數(shù)的一些代碼
自定義ubb代碼,preg_replace()函數(shù)的一些代碼...2007-03-03正則表達(dá)式語法規(guī)則及在Javascript和C#中的使用方法
正則表達(dá)式通常被用來檢索和/或替換那些符合某個模式的文本內(nèi)容。許多程序設(shè)計語言都支持利用正則表達(dá)式進(jìn)行字符串操作2013-10-10正則表達(dá)式學(xué)習(xí)經(jīng)驗分析
正則表達(dá)式用來指定字符串模式。當(dāng)你需要定位匹配某種模式的字符串時就可以使用正則表達(dá)式。例如,我們下面的一個例程就是在一個HTML文件中通過查找字符串模式<a href="...">來定位所有的超鏈接。2008-05-05Scala中正則表達(dá)式以及與模式匹配結(jié)合(多種方式)
這篇文章主要介紹了Scala中正則表達(dá)式以及與模式匹配結(jié)合,本文給大家介紹了多種模式匹配方式,需要的朋友可以參考下2019-06-06常用正則表達(dá)式及評注-學(xué)習(xí)正則必備
2008-02-02