i use this code to validate the phone field.it should have only numbers. but it also accepts alphapets with numbers.it should not accept other than numkbers below is my code i use. errors.add(:phone_code, "*please enter valid phone number") unless self.phone_code =~/[0-9]/ is there any fault in my regular expression ... any helps pls.. -- Posted via http://www.ruby-forum.com/.
2009/6/9 Newb Newb <rails-mailing-list-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org>:> > i use this code to validate the phone field.it should have only numbers. > but it also accepts alphapets with numbers.it should not accept other > than numkbers > below is my code i use. > errors.add(:phone_code, "*please enter valid phone number") unless > self.phone_code =~/[0-9]/That will match if there is at least one number in the string. I think you need something like /\A[0-9]*\z/ or /\A\d*\z/ or possibly even better you could use something like validates_numericality_of :phone_code, :only_integer => true, :greater_than => 0 Though I think this would allow a leading + character. Colin> > is there any fault in my regular expression ... > any helps pls.. > -- > Posted via http://www.ruby-forum.com/. > > > >
On Jun 9, 10:53 am, Colin Law <clan...-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org> wrote:> 2009/6/9 Newb Newb <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org>: > > > > > i use this code to validate the phone field.it should have only numbers. > > but it also accepts alphapets with numbers.it should not accept other > > than numkbers > > below is my code i use. > > errors.add(:phone_code, "*please enter valid phone number") unless > > self.phone_code =~/[0-9]/ > > That will match if there is at least one number in the string. I think > you need something like > /\A[0-9]*\z/ > or > /\A\d*\z/if you are going to use a regexp you might as well use validates_format_of rather than doing it yourself Fred
A Simple Example using RegExp: <html> <head> <script language=''javascript''> function CheckThis(obj) { var strRegExp = /^[0-9]*$/; if(!strRegExp.test(obj.value)) obj.value = ''''; } </script> </head> <body> <p>Insert your data number here:</p> <input type=''text'' id=''test'' size=''10'' value='''' onkeyup=''CheckThis(this);''/> </body> </html> I don''t know if this can help you, i hope. See more: http://evolt.org/regexp_in_javascript. On Tue, Jun 9, 2009 at 12:02 AM, Newb Newb <rails-mailing-list-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> > i use this code to validate the phone field.it should have only numbers. > but it also accepts alphapets with numbers.it should not accept other > than numkbers > below is my code i use. > errors.add(:phone_code, "*please enter valid phone number") unless > self.phone_code =~/[0-9]/ > > is there any fault in my regular expression ... > any helps pls.. > -- > Posted via http://www.ruby-forum.com/. > > > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---