需要与url匹配的正则表达式

时间:2013-07-16 07:19:56

标签: ruby-on-rails ruby regex

下面是我的正则表达式,它匹配包含常规文本,网址和电子邮件ID的文本中的网址。问题在于,它还从电子邮件ID中获取域部分。 http://rubular.com/r/imoL2yQyrO

/(?:(?=[\s`!()\[\]{};:'".,<>?"'])|\b)((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9\-]+[.][a-z]{1,4}\/|[a-z0-9\-]+[.](?:[a-zA-Z]{2,4}))(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))*(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?"']|\b))/

这是文字

有没有办法过滤掉整个电子邮件ID

我的文字

  

Neque porro quisquam est qui dolorem ipsum quia dolor sit amet,   consectetur,adipisci vel http://someurl.com eque porro quisquam est qui dolorem ipsum quia dolor sit amet xyz@abc.com

匹配

  

http://someurl.com,abc.com

它不应该与xyz@abc.com中的abc.com匹配

1 个答案:

答案 0 :(得分:0)

您可以对每个条目进行过帐,以查找@符号。

if(ExtractedURLfromREGEX.index('@') > -1)
   ##do stuff with emails
end