http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2122 *** shadow/2122 Mon Jun 11 16:42:59 2001 --- shadow/2122.tmp.2775 Mon Jun 11 16:42:59 2001 *************** *** 0 **** --- 1,69 ---- + +============================================================================+ + | problem with character class sub-parser | + +----------------------------------------------------------------------------+ + | Bug #: 2122 Product: Regexp | + | Status: NEW Version: unspecified | + | Resolution: Platform: Other | + | Severity: Normal OS/Version: Other | + | Priority: Other Component: Other | + +----------------------------------------------------------------------------+ + | Assigned To: [EMAIL PROTECTED] | + | Reported By: [EMAIL PROTECTED] | + | CC list: Cc: | + +----------------------------------------------------------------------------+ + | URL: | + +============================================================================+ + | DESCRIPTION | + version 1.2 + + using character expressions such as [ac-z] or [ace-z] seem to lead to + broken regexps. the following two tests for RETest should show the + problem: + #149 + [ac-z]+ + ace + YES + ace + + #150 + [ace-z]+ + ace + YES + ace + + the results that i get are: + 149. [ac-z]+ + + Match against: 'ace' + Match: YES + Paren count: 1 + Paren 0 : ce + + + ******************************************************* + ********************* FAILURE! ********************** + ******************************************************* + + + Register 0 should be = "ace", but is "ce" instead. + + 150. [ace-z]+ + + Match against: 'ace' + Match: YES + Paren count: 1 + Paren 0 : a + + + ******************************************************* + ********************* FAILURE! ********************** + ******************************************************* + + + Register 0 should be = "ace", but is "a" instead. + + it would seem that the range is somehow invalidating the previous simple + character. + + on a related note, the only way to match '-' in a character class is to + escape it and add it at the end. that seems wrong. \ No newline at end of file