Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #2852

Re: regex capability

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>

Show all headers | View raw


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 | NextPrevious in thread | Next in thread | Find similar


Thread

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