Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #2852
| From | Robert Klemme <shortcutter@googlemail.com> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: regex capability |
| Date | 2011-04-04 22:13 +0200 |
| Message-ID | <8vun3sFs1lU1@mid.individual.net> (permalink) |
| References | <u3sip61i207oesd83ckbrt3vjm66p948kd@4ax.com> <MPidnVkegr4rHQTQnZ2dnUVZ8jydnZ2d@brightview.co.uk> |
On 04.04.2011 10:26, bugbear wrote:
> Roedy Green wrote:
>> Consider a string like this:
>>
>> Support DDR2 1066/800/667/533/400 DDR2 SDRAM
>>
>> Is it possible to compose a regex that will peel out those numbers for
>> you each in its own field, or do you have to extract the string
>> "1066/800/667/533/400" and use split?
>>
>> The various things I have tried just grab the last number.
>
> I think normal practice (in Perl, and Java) would be repeated
> use of a fairly simple regexp.
>
> In Java, I use
>
> while(matcher.find()) {
> ...
> }
>
> The key is that Matcher is stateful.
And for added security a two level approach could be taken:
// untested
Pattern whole = Pattern.compile("Support DDR2 (\\d+(?:/\\d+)*) DDR2 SDRAM");
Pattern number = Patter.compile("\\d+");
Matcher m = whole.matcher(input);
if ( m.matches() ) {
for (m = number.matcher(m.group(1)); m.find();) {
int x = Integer.parse(m.group());
}
}
else {
// error?
}
Kind regards
robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar
regex capability Roedy Green <see_website@mindprod.com.invalid> - 2011-04-04 00:19 -0700
Re: regex capability Leif Roar Moldskred <leifm@dimnakorr.com> - 2011-04-04 02:34 -0500
Re: regex capability Roedy Green <see_website@mindprod.com.invalid> - 2011-04-04 00:50 -0700
Re: regex capability Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-04-04 08:03 -0400
Re: regex capability Patricia Shanahan <pats@acm.org> - 2011-04-04 05:25 -0700
Re: regex capability David Lamb <dalamb@cs.queensu.ca> - 2011-04-04 18:51 -0400
Re: regex capability Jim Gibson <jimsgibson@gmail.com> - 2011-04-04 17:07 -0700
Re: regex capability bugbear <bugbear@trim_papermule.co.uk_trim> - 2011-04-04 09:26 +0100
Re: regex capability Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2011-04-04 19:20 +0200
Re: regex capability Robert Klemme <shortcutter@googlemail.com> - 2011-04-04 22:13 +0200
Re: regex capability markspace <-@.> - 2011-04-04 18:35 -0700
Re: regex capability bugbear <bugbear@trim_papermule.co.uk_trim> - 2011-04-05 09:09 +0100
Re: regex capability Paul Cager <paul.cager@googlemail.com> - 2011-04-05 02:10 -0700
Re: regex capability Patricia Shanahan <pats@acm.org> - 2011-04-05 05:28 -0700
Re: regex capability Robert Klemme <shortcutter@googlemail.com> - 2011-04-05 06:33 -0700
Re: regex capability markspace <-@.> - 2011-04-05 10:07 -0700
csiph-web