鍍金池/ 問(wèn)答/HTML5  Java  網(wǎng)絡(luò)安全  HTML/ 請(qǐng)教一個(gè)cookie中用到的正則

請(qǐng)教一個(gè)cookie中用到的正則

new RegExp("address=([^;]*)")

var str = 'username=wang; address=shanghai'
表示 address= 加上除了分好外的東西??
那個(gè)星號(hào)是啥,加了星號(hào)能去除shanghai,不加的話就取了一個(gè)s

回答
編輯回答
話寡
表示 address= 加上除了分好外的東西??

嗯嗯,[^;] 表示匹配一個(gè)不為 ; 的字符,僅僅匹配一次

那個(gè)星號(hào)是啥,加了星號(hào)能去除shanghai,不加的話就取了一個(gè)s

*表示匹配任意次,默認(rèn)是符合匹配規(guī)則的情況下,越多越好,所以匹配到了后面全部的,直到;
不加 * 就是上面的,默認(rèn)僅僅匹配一次,所以只能匹配到一個(gè) s

2018年5月21日 16:46
編輯回答
尋仙

* 相對(duì)于 {0,} 表示出現(xiàn)任意次數(shù)
重點(diǎn)是 它為 貪婪量詞,表示盡可能多的匹配滿足滿足條件 [^;] 也就是非 分號(hào)的字符,

相反的就有惰性量詞 *? ,也就是惰性匹配,盡可能少的匹配。

2017年12月19日 23:58
編輯回答
爆扎

[] 定義字符匹配的范圍,其中可以加一些特殊符號(hào),比如 [a-z]^ 表示取反,即不包含。

* 出現(xiàn)在字符后面是量詞,表示字符的數(shù)量。比如 + 表示 1 到多,表示 0,1 ; 那 * 就表示這兩者的合集,0 到多。當(dāng)然還可以用 {} 表示數(shù)量,比如 {0,1}。

2017年5月8日 00:07
編輯回答
呆萌傻

[^;]除了分號(hào)以外的任意字符
*匹配前一個(gè)表達(dá)式0次或多次
所以就是匹配除了分號(hào)以外任意字符0次或多次

2018年8月29日 19:20
編輯回答
孤客

和?還有+在正則表達(dá)式中屬于量詞,的范圍是[0,+∞),?的范圍是0或1,+的范圍是[1,+∞)。
但從你這題目中只能給你這么多解答了

2018年8月21日 00:11
編輯回答
尕筱澄

匹配0或多個(gè)字符啊,不加的話就匹配一個(gè)字符

2018年8月21日 09:57
編輯回答
扯不斷

謝邀!
首先恭喜您已經(jīng)解決!白天忙于nextjs + react + 。。。 重構(gòu)項(xiàng)目,沒(méi)來(lái)得及看!在這里我再一一說(shuō)一下,就當(dāng)歉意了!
RegExp 構(gòu)造函數(shù)創(chuàng)建了一個(gè)正則表達(dá)式對(duì)象,用于將文本與一個(gè)模式匹配。
語(yǔ)法:

new RegExp(pattern [, flags])

參數(shù):
pattern: 正則表達(dá)式的文本。
flags: 可選,g、i、m、u、y,其中g和i最為常用。

正則表達(dá)式中特殊字符的含義:
(x): 匹配 x 并且捕獲匹配項(xiàng),這被稱為捕獲括號(hào)。
[^x]: 一個(gè)反義或補(bǔ)充字符集,也叫反義字符組。也就是說(shuō),它匹配任意不在括號(hào)內(nèi)的字符。在這里[^;]: 也就是除了分號(hào)以外的任意字符
x*: 匹配前面的模式 x 0 或多次。在這里前面的模式為[^;]也就是除了分號(hào)以外的任意字符

2017年1月26日 13:44