亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Tempered Greedy Token - 在負前瞻之前放置點有什么不同

Tempered Greedy Token - 在負前瞻之前放置點有什么不同

牧羊人nacy 2019-05-27 16:31:02
Tempered Greedy Token - 在負前瞻之前放置點有什么不同<table((?!</table>).)*</table>但是,匹配我的所有表格標簽<table(.(?!</table>))*</table>才不是。第二個似乎是有意義的,如果我試圖用文字寫出表達,但我無法理解第一個。有人可以向我解釋一下這個區別嗎?作為參考,我從這里得到了“Tempered Greedy Token”這個術語:http://www.rexegg.com/regex-quantifiers.html#tempered_greed
查看完整描述

3 回答

?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

((?!</table>).)*檢查要匹配的特定字符不能是字符串中的起始字符</table>。如果是,則只匹配該特定字符。*重復相同的零次或多次。

(.(?!</table>))*只有在沒有跟隨</table>,零次或多次的情況下才匹配任何字符。因此,這將匹配表標記內的所有字符,從而刪除最后一個字符,因為最后一個字符后跟</table>。并且以下模式</table>斷言在匹配結束時必須有一個關閉表標記。這使得匹配失敗。

看到這里


查看完整回答
反對 回復 2019-05-27
?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

一個脾氣暴躁的貪婪令牌真正意味著:

“匹配,但只有一點”

你是怎么做到的:

你把你不想匹配的令牌作為一個(?!notAllowedToMatch)點前面的負向前瞻 .(匹配任何一件事),然后用一個星重復整個事情*

((?!notAllowedToMatch).)*

這個怎么運作:

“看,并吃一個”一遍又一遍,通過輸入字符串從左到右移動一個字符,直到看到不允許的序列(或字符串的結尾),此時匹配停止。

Wiktor更詳細的答案很好,我只是覺得一個更簡單的解釋是有序的。


查看完整回答
反對 回復 2019-05-27
  • 3 回答
  • 0 關注
  • 816 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號