- From: <bugzilla@wiggum.w3.org>
- Date: Wed, 31 Aug 2005 15:26:24 +0000
- To: public-qt-comments@w3.org
- Cc:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=1922 Summary: 'x' regex flag not entirely clear Product: XPath / XQuery / XSLT Version: Last Call drafts Platform: PC OS/Version: Windows 2000 Status: NEW Severity: normal Priority: P2 Component: Functions and Operators AssignedTo: ashok.malhotra@oracle.com ReportedBy: holstege@mathling.com QAContact: public-qt-comments@w3.org Section 7.6.1.1 of F&O says only this about the 'x' flag: "x: If present, whitespace characters within the regular expression are ignored. By default, whitespace characters match themselves. This allows, for example, regular expressions to be broken up into lines for readability." Our implementors ask for clarification of what 'ignored' means. Here are some cases: fn:matches("helloworld", "hello[ ]world", "x") Error? (because [] is not a valid character set?) Or true()? fn:matches("hello world", "hello\ sworld", "x") True or false? That is is '\ s' == '\s'? And so forth for spaces in other odd places: "(a|b)(a|b)(a|b)(a|b)(a|b)(a|b)(a|b)(a|b)(a|b)(a|b)\1 0" \1 followed by '0' or \10? "\p{ Lu}" "\p{L u}" "[a- ]" "[a- z]" "hello\ " "[ ^a]" "[^ ]" We assume the appropriate semantic is to pre-strip all whitespace and then parse the resulting regex; this is certainly simpler from an implementation standpoint, but "ignore" isn't entirely clear and could me to ignore in matching, not parsing.
Received on Wednesday, 31 August 2005 15:26:29 UTC