Chingfa Wu wrote:
Hi:
I use window version xerces-c 2.7.0 library on window 2000.
I have an regular expression in my schema as follows:
'([\p{L}\p{Nl}$]|[\p{L}\p{Nl}$][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}$_]*[
\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}_])'.
I ran it again Field_ContinueDemo, I got the following error message:
Value 'Field_ContinueDemo' does not match regular expression facet
'([\p{L}\p{Nl}$]|[\p{L}\p{Nl}$][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}$_]*[
\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}_])'.
If I deleted the first part of the regular expression including "|",
the regular expression becomes:
"([\p{L}\p{Nl}$][\p{L}\p{Nl}\p{Nd}\p{Mn}\p{Mc}\p{Pc}$_]*[\p{L}\p{Nl}\p{N
d}\p{Mn}\p{Mc}\p{Pc}_])', then xercec-c regular expression matched
successfully.
I think the original regular expression is correct, does anyone know why
the match failed? and how to make it work?
There have been a number of regular expression fixes since Xerces-C 2.7.0
was released. I suggest you update to the latest code in the 2.7 branch
and see if that fixes the problem.
Dave