Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   Ruby (http://www.velocityreviews.com/forums/f66-ruby.html)
-   -   Get value from string (http://www.velocityreviews.com/forums/t848364-get-value-from-string.html)

Luca Roma 02-24-2008 06:11 PM

Get value from string
 
I have a string that content a link of a youtube page .
Like:
http://it.youtube.com/watch?v=PupR5V9aE2s&test=1

i want get the value of v:
PupR5V9aE2s

How i can do?
Thanks
--
Posted via http://www.ruby-forum.com/.


Stefano Crocco 02-24-2008 06:17 PM

Re: Get value from string
 
Alle Sunday 24 February 2008, Luca Roma ha scritto:
> I have a string that content a link of a youtube page .
> Like:
> http://it.youtube.com/watch?v=PupR5V9aE2s&test=1
>
> i want get the value of v:
> PupR5V9aE2s
>
> How i can do?
> Thanks


If you know that the part of the string you want is delimited by v= and &, you
can use this:

str.match(/v=([^&]*)/)[1]

Stefano





Luca Roma 02-24-2008 06:22 PM

Re: Get value from string
 
Thanks stefano for the responce

There are 2 possible links:
http://it.youtube.com/watch?v=PupR5V9aE2s&test=1
http://it.youtube.com/watch?v=PupR5V9aE2s


str.match(/v=([^&]*)/)[1]
Is your command valid also for the second link?
Thanks

Stefano Crocco wrote:
> Alle Sunday 24 February 2008, Luca Roma ha scritto:
>> I have a string that content a link of a youtube page .
>> Like:
>> http://it.youtube.com/watch?v=PupR5V9aE2s&test=1
>>
>> i want get the value of v:
>> PupR5V9aE2s
>>
>> How i can do?
>> Thanks

>
> If you know that the part of the string you want is delimited by v= and
> &, you
> can use this:
>
> str.match(/v=([^&]*)/)[1]
>
> Stefano


--
Posted via http://www.ruby-forum.com/.


Stefano Crocco 02-24-2008 06:41 PM

Re: Get value from string
 
Alle Sunday 24 February 2008, Luca Roma ha scritto:
> Thanks stefano for the responce
>
> There are 2 possible links:
> http://it.youtube.com/watch?v=PupR5V9aE2s&test=1
> http://it.youtube.com/watch?v=PupR5V9aE2s
>
>
> str.match(/v=([^&]*)/)[1]
> Is your command valid also for the second link?
> Thanks
>
> Stefano Crocco wrote:
> > Alle Sunday 24 February 2008, Luca Roma ha scritto:
> >> I have a string that content a link of a youtube page .
> >> Like:
> >> http://it.youtube.com/watch?v=PupR5V9aE2s&test=1
> >>
> >> i want get the value of v:
> >> PupR5V9aE2s
> >>
> >> How i can do?
> >> Thanks

> >
> > If you know that the part of the string you want is delimited by v= and
> > &, you
> > can use this:
> >
> > str.match(/v=([^&]*)/)[1]
> >
> > Stefano


Yes. The regexp I used looks for the string v= followed by any number of
characters which are not '&'. Those characters are put into the first group of
the returned MatchData. Since your second link doesn't contain the '&', the
match will go on until the end, which should give you what you want.

Stefano



Thomas Preymesser 02-24-2008 07:30 PM

Re: Get value from string
 
[Note: parts of this message were removed to make it a legal post.]

On 24/02/2008, Luca Roma <roma@nerto.it> wrote:
>
> I have a string that content a link of a youtube page .
> Like:
> http://it.youtube.com/watch?v=PupR5V9aE2s&test=1




irb(main):001:0> require 'uri'
=> true
irb(main):002:0> res = URI.split('
http://it.youtube.com/watch?v=PupR5V9aE2s&test=1')
=> ["http", nil, "it.youtube.com", nil, nil, "/watch", nil,
"v=PupR5V9aE2s&test=1", nil]

gives you an array of:

* Scheme
* Userinfo
* Host
* Port
* Registry
* Path
* Opaque
* Query
* Fragment

-Thomas



All times are GMT. The time now is 08:20 PM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.