You are viewing a plain text version of this content. The canonical link for it is here.
Posted to regexp-dev@jakarta.apache.org by bu...@apache.org on 2001/11/30 20:29:39 UTC
DO NOT REPLY [Bug 5212] New: -
Bracketed space [ \-] followed by dash does not match space
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5212>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5212
Bracketed space [ \-] followed by dash does not match space
Summary: Bracketed space [ \-] followed by dash does not match
space
Product: Regexp
Version: unspecified
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: Other
Component: Other
AssignedTo: regexp-dev@jakarta.apache.org
ReportedBy: dwhelan@innovasys.com
If the pattern contains a space followed by a dash then the RE will not match
strings with spaces. This may be related to Bug #2121.
If you run the code at the end of this description you should get:
RE('[\d \-]') did not match ' '
RE('[ \-\d]') did not match ' '
RE('[ \-]') did not match ' '
RE('[ \-]') did not match '123 '
RE('[ \-]') did not match ' 456'
RE('[ \-]') did not match '123 456'
The following sample code shows the defect:
import org.apache.regexp.*;
/**
* Tests the org.apache.regexp.RE class
*
* @author <a href="mailto:dwhelan@innovasys.com">Declan Whelan</a>
* @version <!--$$Revision: 1.2 $-->
*/
public class RETest
{
/**
* Runs the test suite.
*
* @param theArgs
*/
public static void main(String theArgs[])
{
try
{
// all the below should match a space or a dash
String[] patterns = { "[\\d\\- ]",
"[\\d \\-]",
"[ \\d\\-]",
"[ \\-\\d]",
"[\\- \\d]",
"[\\-\\d ]",
"[ ]",
"[ \\-]",
"[\\- ]"};
String[] matchedStrings = {" ", "123 ", " 456", "123
456"};
for (int i=0; i < patterns.length; i++)
{
RE re = new RE(patterns[i]);
for (int j=0; j < matchedStrings.length; j++)
{
if (!re.match(matchedStrings[j]))
{
System.err.println("RE('" +
patterns[i] + "') did not match '" + matchedStrings[j] + "'");
}
}
}
}
catch(RESyntaxException x)
{
System.err.println(x.getMessage());
}
}
}
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>