How do I match strings?


#1

Ok I know that sounds newbish, but I don’t want to match the entire
string. I just want to match the first 25 characters or so.

I have a hash that looks like

somestuff[:something]

Now I want somestuff[:something] to equal a string.

somestuff[:something] == ‘sadfasdfsdfasdf’

the problem is that somestuff[:something] will never match the entire
string, so I want to match the first 25 characters.

Any ideas…I hope that made sense?


#2

On Mar 17, 2009, at 3:24 PM, Chris G. wrote:

somestuff[:something] == ‘sadfasdfsdfasdf’

the problem is that somestuff[:something] will never match the entire
string, so I want to match the first 25 characters.

Any ideas…I hope that made sense?

somestuff[:something][0,25] = “asdfasdfasdf”

Is one way. There’s probably a ruby method to match N characters of a
string similar to C’s strncmp too.


#3

Chris G. wrote:

Ok I know that sounds newbish, but I don’t want to match the entire
string. I just want to match the first 25 characters or so.

I have a hash that looks like

somestuff[:something]

Now I want somestuff[:something] to equal a string.

somestuff[:something] == ‘sadfasdfsdfasdf’

the problem is that somestuff[:something] will never match the entire
string, so I want to match the first 25 characters.

Any ideas…I hope that made sense?

There are a number of ways depending on your needs. In your case if you
just want to match the beginning of the string Rails provides the
starts_with method (Ruby 1.9 provides start_with, but not Ruby 1.8). For
more complex matches Ruby has excellent regex support. Look at the ~=
method.

somestuff[:something].starts_with “whatever”

somestuff[:something] ~= /^whatever.+/i


#4

Robert W. wrote:

just want to match the beginning of the string Rails provides the
starts_with method (Ruby 1.9 provides start_with, but not Ruby 1.8). For
more complex matches Ruby has excellent regex support. Look at the ~=
method.

somestuff[:something].starts_with “whatever”

Thanks for the info…

Can “whatever” be a variable?