1.正則的懶惰性?
每次在它的方法exec中捕獲的時候,只捕獲第一次匹配的內容,而不往下捕獲,我們把這種情況稱為正則的懶惰性
且每一次捕獲的位置都是從索引0開始
正則的例項物件上有乙個lastindex的屬性,是正則開始捕獲的起始位置
var reg=/\d+/;
var st="abc123efg456";
console.log(reg.exec(st))輸出123
如何解決正則的懶惰性呢
用乙個修飾詞「g」就可以了
2.正則的貪婪性?
每次匹配到的結果都是最長的,把這種情況稱為貪婪性。
var reg=/\d+/;
var st="abc12345"
console.log(reg.exec(st)) 結果是12345
如何讓解決他的貪婪性呢
在元字元量詞後加?
var reg=/\d+?/g
3.分組捕獲 /( )/;
分組捕獲的作用(1)改變優先順序(2)分組引用
\1 \2分別為跟第一組和第二組出現同樣的內容
var reg=/(\w)\1(\w)\2/;
var st="sstt"
console.log(reg.test(st))==true
分組捕獲的前提是正則存在分組,而且是不僅會捕獲到大正則,也會捕獲到小正則的內容
var reg=/(a)(b)/
var st="abcd"
console.log(reg.exec(st)) 結果輸出是 ab a b
那麼該如何解決這種情況呢
在不想讓它出現的那個前面加?:
var reg=/(a)(?:b)/
var st="abcd"
console.log(reg.exec(st)) 結果輸出的是 ab a
每次在它的方法exec中捕獲的時候,只捕獲第一次匹配的內容,而不往下捕獲,我們把這種情況稱為正則的懶惰性
且每一次捕獲的位置都是從索引0開始
正則的例項物件上有乙個lastindex的屬性,是正則開始捕獲的起始位置
var reg=/\d+/;
var st="abc123efg456";
console.log(reg.exec(st))輸出123
如何解決正則的懶惰性呢
用乙個修飾詞「g」就可以了
2.正則的貪婪性?
每次匹配到的結果都是最長的,把這種情況稱為貪婪性。
var reg=/\d+/;
var st="abc12345"
console.log(reg.exec(st)) 結果是12345
如何讓解決他的貪婪性呢
在元字元量詞後加?
var reg=/\d+?/g
3.分組捕獲 /( )/;
分組捕獲的作用(1)改變優先順序(2)分組引用
\1 \2分別為跟第一組和第二組出現同樣的內容
var reg=/(\w)\1(\w)\2/;
var st="sstt"
console.log(reg.test(st))==true
分組捕獲的前提是正則存在分組,而且是不僅會捕獲到大正則,也會捕獲到小正則的內容
var reg=/(a)(b)/
var st="abcd"
console.log(reg.exec(st)) 結果輸出是 ab a b
那麼該如何解決這種情況呢
在不想讓它出現的那個前面加?:
var reg=/(a)(?:b)/
var st="abcd"
console.log(reg.exec(st)) 結果輸出的是 ab a
dropout的正則化理解
dropout是hintion最近2年提出的,源於其文章improving neural newworks by preventing co adaptation of feature detectors.中文的意思 通過阻止特徵檢測器的共同作用來提高神經網路的效能 dropout效果同於baggi...
關於正則化的理解
在機器學習中,如果引數過多或者過大,會導致過擬合的情況出現,通常可以在原損失函式上增加乙個正則項,或者叫懲罰項,來解決過擬合的問題。常用的正則化有兩種,l1正則化和l2正則化,分別對應 式1 和 式2 l1正則項是所有引數的絕對值之和,l2正則項是所有引數的平方和。這裡先下結論,l1正則化可以減小引...
JS正則(2)對正則的理解
對正則的理解 一 1.正則的懶惰性 概念 每一次在exec 中捕獲的時候,只捕獲第一次匹配的內容,而不往下捕獲了,我們把這叫正則的懶惰性,每一次捕獲的開始位置都是從0開始。解決正則的懶惰性 用修飾符g 正則的例項物件reg上有乙個lastindex屬性 它是正則捕獲的起始位置 2.正則的貪婪性 每一...