From: "Carina C. Zona" Date: 2012-06-13T09:29:49+09:00 Subject: Re: Need simple Reg exp This is one approach if you have a reason for preferring a regex: str.match /afp:\/\/[A-Z]{3}/ However, keep in mind that without more examples it's hard to say whether this actually meets your requirements. For instance, AFP protocol does not require hostnames to be all caps. Nor is it a given that your intention is to extract from a dataset in which domains always have exactly 3 letters. Unless you have a reason for using a regex and have specced it well, Eric's solution is likely to be the more robust one. On Tue, Jun 12, 2012 at 1:39 PM, Eric Hodel wrote: > On Jun 12, 2012, at 13:24, cyber c. wrote: >> i have a string, >> >> str = "afp://XYZ/a/b/c/d" >> >> i need to extract "afp://XYZ" . Can anyone suggest a simple reg >> expression? > > > URI can do this. > > $ ruby -ruri -e 'u = URI("afp://XYZ/a/b/c/d"); p u.scheme, u.host' > "afp" > "XYZ" > > and: > > $ ruby -ruri -e 'u = URI("afp://XYZ/a/b/c/d"); puts u + "/"' > afp://XYZ/ > >