I am running NAnt 2.1.93. I used a regex task
<regex pattern="^(?'msi-id'\d\d\d\d\d\d_\d\d_\d\d)$" ... /> which resulted in the following output: ============================= INTERNAL ERROR System.ArgumentException: parsing "(?'msi-id'\d\d\d\d_\d\d_\d\d)" - Reference to undefined group name id. Parameter name: (?'msi-id'\d\d\d\d_\d\d_\d\d) at System.Text.RegularExpressions.RegexParser.ScanGroupOpen() at System.Text.RegularExpressions.RegexParser.ScanRegex() at System.Text.RegularExpressions.RegexParser.Parse(String re, RegexOptions op) at System.Text.RegularExpressions.Regex..ctor(String pattern, RegexOptions options) at NAnt.Core.Tasks.RegexTask.ExecuteTask() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Tasks\RegexTask.cs:line 143 at NAnt.Core.Task.Execute() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Task.cs:line 177 at NAnt.Core.TaskContainer.ExecuteChildTasks() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\TaskContainer.cs:line 120 at NAnt.Core.TaskContainer.ExecuteTask() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\TaskContainer.cs:line 90 at NAnt.Core.Tasks.IfTask.ExecuteTask() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Tasks\IfTask.cs:line 335 at NAnt.Core.Task.Execute() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Task.cs:line 177 at NAnt.Core.TaskContainer.ExecuteChildTasks() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\TaskContainer.cs:line 120 at NAnt.Core.TaskContainer.ExecuteTask() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\TaskContainer.cs:line 90 at NAnt.Core.Tasks.IfTask.ExecuteTask() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Tasks\IfTask.cs:line 335 at NAnt.Core.Task.Execute() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Task.cs:line 177 at NAnt.Core.Project.InitializeProjectDocument(XmlDocument doc) in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Project.cs:line 1309 at NAnt.Core.Project.Execute() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Project.cs:line 824 at NAnt.Core.Project.Run() in C:\Documents and Settings\drieseng\Local Settings\Temp\tmp2267.tmp\src\NAnt.Core\Project.cs:line 903 Please send bug report to [EMAIL PROTECTED] ==================================== The actual problem is the '-' in the capture name 'msi-id'. 'msiid" and 'msi_id' work, but not 'msi-id'. The Microsoft documentation for the regular expression naming constructs disallows "punctuation" in the names. So, apparently, a hyphen counts as punctuation, but an underscore doesn't. So be it. I'll change the name. However, NAnt should not have freaked out on the syntax error to the point of printing a stack trace and urging the user to send in a bug report to the (closed) developers' mailing list. In the case of processing the <regex> task (with its unusual arguments), NAnt should catch a System.ArgumentException, report it's message, then simply terminate as with any other syntax error. Merrill ------------------------------------------------------- This SF.Net email is sponsored by OSTG. Have you noticed the changes on Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, one more big change to announce. We are now OSTG- Open Source Technology Group. Come see the changes on the new OSTG site. www.ostg.com _______________________________________________ Nant-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/nant-users