[英]Regex not working as expected
好的,讓我解釋一下當前情況:
我從COM1獲得了一些字符串,我對此進行了過濾以僅顯示所需的信息,因此我只有這樣的字符串:
NTF,IDAS,RXSTAT,IND,01-0100,01-0131,+,-63,81
現在的問題是,在此示例中,我需要獲取數字:131,僅該數字,
我試圖用Regex實現此目的,但沒有成功。
我有這個作為我的正則表達式:
Regex.Match(line, ",01-0100,01-0([0-9]{3})").Value.ToString()
並期望能給我回報
131
但是它返回:
,01-0100,01-0131
有人可以幫助我解決這個問題嗎?
您使用了錯誤的組索引。 組0是整個匹配項,組1是第一個組的值。
Regex.Match(line, ",01-0100,01-0([0-9]{3})").Groups[1].Value.ToString()
您還可以命名您的群組:
Regex.Match(line, ",01-0100,01-0(?<mygroup>[0-9]{3})").Groups["mygroup"].Value.ToString()
哦,作為一個組的值始終是一個字符串:
Regex.Match(line, ",01-0100,01-0(?<mygroup>[0-9]{3})").Groups["mygroup"].Value;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.