No, the wildcard is used for a database search. Find me all names matching "Foo*". This is not for [io].
The oro code does look reasonable I'd say. Stephen On 9 October 2010 12:25, sebb <seb...@gmail.com> wrote: > What does the regex represent? A filename? > > If so, then maybe the code belongs in IO rather than Lang. > > Also, filename globbing is not consistent across OSes. > > On 8 October 2010 15:32, Stephen Colebourne <scolebou...@joda.org> wrote: >> Human users enter wildcards * and ? (because regex is too complex). In >> my case, I'm passing it to MongoDB, which needs regex. >> >> Stephen >> >> >> On 8 October 2010 15:10, Paul Benedict <pbened...@apache.org> wrote: >>> Can I get some sense of use case? What would you use it for? Just curious. >>> >>> On Fri, Oct 8, 2010 at 9:06 AM, Stephen Colebourne <scolebou...@joda.org> >>> wrote: >>>> I don't think comons lang has a routine for converting a standard >>>> wildcard string (with * and ?) to a regex. >>>> Here is a first suggestion, although I'm sure it can be improved. >>>> >>>> public Pattern createPattern(String text) { >>>> StringTokenizer tkn = new StringTokenizer(text, "?*", true); >>>> StringBuilder buf = new StringBuilder(text.length() + 10); >>>> buf.append('^'); >>>> boolean lastStar = false; >>>> while (tkn.hasMoreTokens()) { >>>> String str = tkn.nextToken(); >>>> if (str.equals("?")) { >>>> buf.append('.'); >>>> lastStar = false; >>>> } else if (str.equals("*")) { >>>> if (lastStar == false) { >>>> buf.append(".*"); >>>> } >>>> lastStar = true; >>>> } else { >>>> buf.append(Pattern.quote(str)); >>>> lastStar = false; >>>> } >>>> } >>>> buf.append('$'); >>>> return Pattern.compile(buf.toString(), Pattern.CASE_INSENSITIVE); >>>> } >>>> >>>> Other possile conversions would be * and ? to databse wildcards, so >>>> perhaps there is scope for a few related methods here? >>>> >>>> Stephen >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >>>> For additional commands, e-mail: dev-h...@commons.apache.org >>>> >>>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >>> For additional commands, e-mail: dev-h...@commons.apache.org >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> For additional commands, e-mail: dev-h...@commons.apache.org >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org