我有,我需要解析C#腳本,並尋找一定的方法屬性,並從中提取部分任務,我不知道是否有一個更優雅的方式比我如何做到這一點:什麼是更優雅的方式來解析這個字符串?
[Info("Title", "Author", "5.2.5", ResourceId = 819)]
這是我做的:
// foreach line in script
if (line.Contains("[Info(") && line.Contains("ResourceId"))
{
var _attributes = line
.Replace(" ", "")
.Replace("\"", "")
.Replace("[Info(", "")
.Replace(")]", "")
.Replace("ResourceId=", "")
.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
// Do stuff with _attributes[0] _attributes[1] etc..
break;
}
文本解析最好用正則表達式完成。通過這個網站可以實現從字符串自動創建正則表達式:http://txt2re.com/ –
這應該已經到了代碼審查也許? – Kixoka
此任務非常適合正則表達式。但我不同意Siderite的看法,「測試解析最好用正則表達式來完成」。人們傾向於在不恰當的時候使用正則表達式。如果可能的話,總是嘗試使用比正則表達式更簡單的方法()(如字符串方法)。正則表達式很慢,並使用大量的內存。 – jdweng