I could answer "It works for me" but that would simply prolong this thread unnecessarily!
Perhaps you could explain in what way does it not work. Does it create "compile" errors? Runtime errors? Create the wrong capture values?
Also, can you please provide a bit more of the code around this as there may be something going on there.
I realise that it is in a different forum on this site, but there are posting guidelines in the "Construction Advice" forum at http://regexadvice.com/forums/thread/60465.aspx. One of the things asked for there is to not make up examples because in doing so you often remove some important characteristic when you try to make it "simple to demonstrate".