--- Niall Pemberton <[EMAIL PROTECTED]> wrote:
> Hey thanks for your help - what you suggested worked (i.e. using
> "^[\d,]*$") - I was using the ORO demo, but if you don't put the right
> stuff
> in....:-)
> 
> OK, I'm picking up regex slowly - so this works because ^ is for the
> beginning of a line and % is for the end of a line.

I think you meant $ instead of % but yes that's correct.

> 
> Apologies for the "doesn't work" slander then - but wouldn't it be
> better to
> use Perl5Matcher.matches(value, pattern) and then there would be no need
> to
> specify the ^ and $ characters at the start and end - simpler and less
> confusing?
> 
> This could be done and would be backward compatible.

I really haven't looked at the differences between matches() and
contains() so I don't know if it's backwards compatible.  You could try
changing it and let us know what happens.

David

> 
> Niall
> 
> 
> 
> ----- Original Message ----- 
> From: "David Graham" <[EMAIL PROTECTED]>
> To: "Struts Developers List" <[EMAIL PROTECTED]>
> Sent: Friday, January 16, 2004 1:39 PM
> Subject: Re: Validating Formatted Numbers Patch [Bugzilla 26151]
> 
> 
> >
> > --- Niall Pemberton <[EMAIL PROTECTED]> wrote:
> > > Graham
> > >
> > > OK, I decided to look further into your suggestion, but didn't get
> very
> > > far
> > > and I think its because mask doesn't work.
> >
> > I know it works because I use it in my apps :-).
> >
> > >
> > > I started with a simple expression of [\d,]*  to validate that the
> input
> > > only contains numbers or a comma. Whatever I input though validator
> > > always
> > > passed it as valid.
> >
> > ORO's test applet is really helpful when testing regexs.  Try putting
> ^ at
> > the front and $ at the end of the pattern.  ORO seems to need these to
> > work properly unlike Java 1.4 regexs.
> >
> > David
> >
> > >
> > > Looking into validator it uses Perl5Util.match(pattern, value)
> > >
> > > This utility uses the Perl5Matcher.contains(value, pattern) method
> which
> > > only checks that the value contains the pattern - not that matches
> (it
> > > says
> > > so in the Perl5Util documentation).
> > >
> > > Isn't this the wrong thing to do - shouldn't validator be using the
> > > Perl5Matcher.matches(value, pattern) method. I had a look at commons
> > > validator test thinking this must be tested for and I must be
> > > mis-understanding it - but mask seems to be the one thing there are
> no
> > > tests
> > > for - and there don't seem to be any in struts either for
> > > FieldChecks.validateMask())
> > >
> > >
> > > Anyway, am I right - is this a bug, or am I just using it wrongly?
> > >
> > > Niall
> > >
> > > P.S. If I am right, then it implies no one is using mask and I think
> > > thats
> > > an argument for my simpler number validation.
> > >
> > >
> > > ----- Original Message ----- 
> > > From: "David Graham" <[EMAIL PROTECTED]>
> > > To: "Struts Developers List" <[EMAIL PROTECTED]>
> > > Sent: Thursday, January 15, 2004 10:19 PM
> > > Subject: Re: Validating Formatted Numbers Patch [Bugzilla 26151]
> > >
> > >
> > > > The point of having the mask validation is so we don't have to
> support
> > > all
> > > > variations of patterns.  I'm -1 on adding validators that
> duplicate
> > > what
> > > > can already be done with mask.
> > > >
> > > > David
> > > >
> > > > --- Niall Pemberton <[EMAIL PROTECTED]> wrote:
> > > > > Robert,
> > > > >
> > > > > I tried to get mask to work (although until today I had no
> knowledge
> > > of
> > > > > regular expressions) using the ORA demonstration applet and  I
> > > couldn't
> > > > > get
> > > > > it to (including your suggestion).
> > > > >
> > > > > I'm not saying regular expressions couldn't work (only I don't
> know
> > > how
> > > > > to
> > > > > make them!), but the pattern's used in DecimalFormat are so much
> > > more
> > > > > straight forward and designed for the task. Typically as people
> are
> > > > > probably
> > > > > using a pattern with DecimalFormat to output the data to screen,
> it
> > > then
> > > > > is
> > > > > much easier and intuitive to specify the same pattern for
> > > validation.
> > > > >
> > > > > I say horses for courses and to me using a number pattern to
> > > validate
> > > > > numbers is a better way to do it - hence the enhacement request:
> > > > >
> > > > > http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26151
> > > > >
> > > > > Thanks
> > > > >
> > > > > Niall
> > > > >
> > > > > > Robert Leland wrote:
> > > > > >
> > > > > > So using mask won't work ? (my syntax below is probably not
> > > correct)
> > > > > >
> > > > > > <field property="amount" depends="required,mask">
> > > > > >     <arg0 key="sale.amount" />
> > > > > >     <var>
> > > > > >           <var-name>mask</var-name>
> > > > > >           <var-value>\d,\d\d0\:\(\d,\d\d0\)</var-value>
> > > > > >     </var>
> > > > > > </field>
> > > > >
> > > > > I need to validate numbers which are formatted and have posted a
> > > patch
> > > > > to
> > > > > bugzilla which enhances validator the existing number
> validations to
> > > do
> > > > > this.
> > > > >
> > > > > This patch allows an optional "numberPattern" variable to be
> > > specified
> > > > > for
> > > > > the existing byte, short, integer, long, float and double
> > > validations.
> > > > > For
> > > > > Example:
> > > > >
> > > > > <field property="amount" depends="required,integer">
> > > > >     <arg0 key="sale.amount" />
> > > > >     <var>
> > > > >           <var-name>numberPattern</var-name>
> > > > >           <var-value>#,##0:(#,##0)</var-value>
> > > > >     </var>
> > > > > </field>
> > > > >
> > > > > If the pattern is specified, then java.text.DecimalFormat is
> used to
> > > > > parse
> > > > > the number and check if it is valid (catering for Locale).
> > > > >
> > > > > I have also posted a patch to add a new section the Validator
> User
> > > Guide
> > > > > which describes all the standard suppiled validations and shows
> > > examples
> > > > > of
> > > > > usage, including using the new "numberPattern" variable.
> > > > >
> > > > > Thanks in advance for any feedback.
> > > > >
> > > > > Niall
> > > > >
> > > > >
> > > > >
> > > > >
> > >
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > > > > For additional commands, e-mail:
> [EMAIL PROTECTED]
> > > > >
> > > >
> 
=== message truncated ===


__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
http://hotjobs.sweepstakes.yahoo.com/signingbonus

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to