正则表达式在“@”之后剪切电子邮件地址

时间:2011-01-03 08:48:01

标签: ruby-on-rails regex

让我们说......

<%= @user.email %>

产生

john@microsoft.com

如何在“@”之后剪切所有字符,使其变为......

john

4 个答案:

答案 0 :(得分:8)

您可以使用split

str = "john@example.com"
parts = str.split("@")
puts parts[0] //john

示例:http://ideone.com/0mSID

答案 1 :(得分:2)

您可以使用sub

s.sub(/@.*/, '')

或匹配at符号前的所有字符:

/^(.*?)@/

答案 2 :(得分:2)

@,后跟任意数量的任何字符,到最后。

result = subject.gsub(/@.*$/, "").

答案 3 :(得分:2)

[^@]+

含义:任何字符,但不是@