Ruby 如何改进此电子邮件正则表达式以支持有效的有趣字符
我在网上查阅了许多正则表达式,经过多次测试,它们都与此电子邮件不匹配:Ruby 如何改进此电子邮件正则表达式以支持有效的有趣字符,ruby,regex,Ruby,Regex,我在网上查阅了许多正则表达式,经过多次测试,它们都与此电子邮件不匹配: CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com 我想做的是从一块文本中提取电子邮件,我得到的只是=符号后面的部分: str = 'Foo: <CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com>' emails = str.scan(/\b[
CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com
我想做的是从一块文本中提取电子邮件,我得到的只是=
符号后面的部分:
str = 'Foo: <CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com>'
emails = str.scan(/\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i)
=> ['DA_69SwRpuBu4w@mail.gmail.com']
str='Foo:'
emails=str.scan(/\b[A-Z0-9.\%+-]+@[A-Z0-9.-]+\[A-Z]{2,4}\b/i)
=>['DA_69SwRpuBu4w@mail.gmail.com']
您只需将=
添加到regexp:
str = 'Foo: <CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com>'
emails = str.scan(/\b[A-Z0-9._%+-=]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i)
=> ["CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com"]
str='Foo:'
电子邮件=str.scan(/\b[A-Z0-9.\uz0%+-=]+@[A-Z0-9.-]+\[A-Z]{2,4}\b/i)
=>[“CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com"]
是否将=
包含在用于用户名的字符类中
str = 'Foo: <CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com>'
emails = str.scan(/\b[A-Z0-9._%+-=]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i)
=> ["CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com"]
str='Foo:'
电子邮件=str.scan(/\b[A-Z0-9.\uz0%+-=]+@[A-Z0-9.-]+\[A-Z]{2,4}\b/i)
=>[“CAKyppebtX1Fe7t1bdZGABT1a9Pp4bp6zVnx=DA_69SwRpuBu4w@mail.gmail.com"]
您没有在这里的组中包括=
签名[A-Z0-9.%+-]
,只需将其添加到那里即可。