[英]Regex code explanation
誰能告訴我這行代碼的含義,我知道它在尋找正則表達式,但我不明白最后的含義。
System.Text.RegularExpressions.Regex("(?<=<Last>).*(?=</Last>)");
提前致謝。
(?<=<Last>)
是斷言的外觀。 這意味着它匹配.*
僅在前面有<Last>
時
(?=</Last>)
是一個前瞻性斷言。 確保在.*
之后有一個<\\Last>
.*
可以在msdn上找到有關.net中正則表達式的更多信息。
注釋,提供的示例不是完整的代碼行( 請參閱msdn上的Class Regex )
這應該是這樣的一部分:
Regex MyRegex = new System.Text.RegularExpressions.Regex("(?<=<Last>).*(?=</Last>)");
創建一個新的Regex對象。
另一種可能性是使用正則表達式而不創建正則表達式對象,靜態方法isMatch
看起來像這樣:
System.Text.RegularExpressions.Regex.IsMatch(StringToSearchIn, "(?<=<Last>).*(?=</Last>)")
這返回true或false。
它基本上是在某些xml文檔(包括其內容)中尋找<Last>
標簽。
?<=是斷言的外觀。 請參閱此處以獲取詳細說明。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.