Regex hostnames?

Not versed in regex, hopefully someone can help me out.

How can I return only the domain from a string like

host[0-9].temp.temp.com
or
[0-9]host.temp.com

So it only returns "temp.temp.com" or "temp.com". Essentially removing
the shortname of the host even if there is a range within the shortname.
I may have additional periods to identify subdomains but there will
never be a period inside a the shortname of the host.

···

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

So you want to remove everything up to the first period?

s = "host1.temp.temp.com"
s[/\..*/,1]

Jesus.

···

On Tue, Jan 15, 2013 at 10:26 PM, skolo pen <lists@ruby-forum.com> wrote:

Not versed in regex, hopefully someone can help me out.

How can I return only the domain from a string like

host[0-9].temp.temp.com
or
[0-9]host.temp.com

So it only returns "temp.temp.com" or "temp.com". Essentially removing
the shortname of the host even if there is a range within the shortname.
I may have additional periods to identify subdomains but there will
never be a period inside a the shortname of the host.

s = "host1.temp.temp.com"
s[/\..*/,1]

Shouldn't that be s[/\..*/,0] or s[/\..*/] ?

···

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

Or if you don't want the dot:

    s[/\.(.*)/,1]

···

On 16 January 2013 09:20, Joel Pearson <lists@ruby-forum.com> wrote:

>
> s = "host1.temp.temp.com"
> s[/\..*/,1]

Shouldn't that be s[/\..*/,0] or s[/\..*/] ?

--
  Matthew Kerwin, B.Sc (CompSci) (Hons)
  http://matthew.kerwin.net.au/
  ABN: 59-013-727-651

  "You'll never find a programming language that frees
  you from the burden of clarifying your ideas." - xkcd

s = "host1.temp.temp.com"
s[/\..*/,1]

Oops, copy/paste error, I forgot the parens. This was my meant solution:

1.9.2p290 :003 > s[/\.(.*)/,1]
=> "temp.temp.com"

Shouldn't that be s[/\..*/,0] or s[/\..*/] ?

These ones return also the first ".":

1.9.2p290 :004 > s[/\..*/,0]
=> ".temp.temp.com"
1.9.2p290 :005 > s[/\..*/]
=> ".temp.temp.com"

Jesus.

···

On Wed, Jan 16, 2013 at 12:20 AM, Joel Pearson <lists@ruby-forum.com> wrote:

Exactly, that was what I meant to write...

Jesus.

···

On Wed, Jan 16, 2013 at 12:36 AM, Matthew Kerwin <matthew@kerwin.net.au> wrote:

On 16 January 2013 09:20, Joel Pearson <lists@ruby-forum.com> wrote:

>
> s = "host1.temp.temp.com"
> s[/\..*/,1]

Shouldn't that be s[/\..*/,0] or s[/\..*/] ?

Or if you don't want the dot:

    s[/\.(.*)/,1]