這是我第一次使用C#和使用正則表達式的有限經驗的一部分,我在捕獲特定表達式中第一次匹配時遇到了問題。我相信下面的例子會比描述我想要做的更清楚。用正則表達式捕獲第一個匹配(C#)
Match extractor = (new Regex(@".*\d(?<name>.*)\d.*")).Match("This hopefully will pick up 1Bob9error1 as a name");
Console.WriteLine(extractor.Groups["name"]);
我想這個表達式打印「鮑勃」,而不是「錯誤」。
我有一個預感它有什麼關係?在匹配組的前面,但我不完全確定什麼操作?在這種特殊情況下執行。一個解釋和一些幫助將是美好的。
謝謝你們,你們不知道這個網站能幫助像我這樣的初學程序員。
(? yourRegEx)表示可以具有名稱「name」的捕獲組。這就是爲什麼你能夠使用extractor.Groups [「name」] –
nickytonline
2009-12-01 21:19:35