Re: Regular expression: How do I allow forward slashes?

AlwaysCharging
Sun, 20 Dec 2009 07:10:52 -0000

But that made me question why I couldn''t just put the "/"
inside of
the bracket as well.  Like why did that have to be escaped if the
period didn''t.  (I guess it''s because in that syntax, the
forward
slash has closure properties.)
Oh well it''s working now, and I escaped the . as well (\.).
Thank you for your help.  Much appreciated frogstarr

On Dec 20, 12:09 am, frogstarr78
<frogstar...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
wrote:
> It actually depends on where the "." is in the Regexp. In your
case it
> is inside a Character Class "[]". So it is matching the
"." character
> explicitly. Since \w is shorthand for the [a-zA-Z] character class. It
> is parsed as a character class instead of an escaped "w"
character. So
> you could actually change the character class to be %r|[-\w_./]|. No
> need to further escape the "_", or "-" since it is at
the beginning of
> the class (That''s for another reason though).
>
> On Dec 19, 10:12 am, AlwaysCharging
<goodg...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>
> > Yes, that did it.  Thank you.
> > No idea how I try everything and overlook the simplest solution, duh.
>
> > And, Thank you to everyone else that weighed in as well, definitely
> > some other options to look into.
>
> > Side note:  Anybody know why the period doesn''t have to be
escaped?
> > Like just "." allows the dot to be input, as well as
"\."
> > So, [-\w\_\.\/] works just as [-\w\_.\/].  Why is this?
>
> > On Dec 19, 3:41 am, frogstarr78
<frogstar...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>
> > > Have you tried escaping them "\/"?
>
> > > On Dec 18, 11:01 pm, AlwaysCharging
<goodg...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>
> > > > In my app, I allow users to submit urls.  They (of course)
need the
> > > > ability to submit urls with a forward slash, "/",
but whats the
> > > > regular expression to allow them to do that?
>
> > > > I currently use:
>
> > > > validates_format_of :url, :with => /^[-\w\_.]+$/i
>
> > > > to only allow alphanumerics, dashes, underscores, and dots
to prevent
> > > > cross site scripting when I later reconstruct these urls,
but I can''t
> > > > figure out how to allow "/" as well.
>
> > > > Any ideas?