我正在尝试使用以下正则表达式匹配字符串 m-y_n.ame@myemail.edu.in:
([_A-Za-z0-9-.]+@[a-z0-9-]+[.][a-z]{2,3}[.][a-z]{2,3})
完整的正则表达式为:
([-A-Za-z0-9._!#$%^&*|{}'~`]+@[a-z0-9_-]+[\\.][a-z]{2,3}[\\.][a-z]{2,3})|([A-Za-z0-9.!#$%^&*|{}\"~`]+@[a-z0-9_-]+[\\.][a-z]{4})|([A-Z.a-z0-9!#$%^&*|{}'~`]+@[a-z0-9_-]+[\\.][a-z]{3})|([A-Za-z0-9.!#$%^&*_-|{}'~`]+@[a-z0-9_-]+[\\.][a-z]{2})
为了能够匹配指定的模式,我需要对正则表达式进行哪些更改?
这些是我的一些测试用例:
1.vamsi$deepak0@gmail.com
2.v_a_m_s_i_d_e_e_p_a_k_0_3@gmail.com
3.v-a-m_si.deepak@gmail.com
4.vamsi$deepak03@gmail.co.in
5.v_a_m_s_i_d_e_e_p_a_k_0_3@gmail.co.in
6.v-a-m_si.deepak@gmail.co.in
7.vamsideepask03@bits-pilani.edu
8.vams-ideep_ask03@bits-pilani.edu
9.vamsi-d_.eepak03@gmool.biz
10.songs@gaana.in
11.vamsideep_-.ak03@footfall.net
12.jackspa_-.rrow@pirates.org
13.nomorespaceshuttles@nasa.gov
The most scary test case seems to be
14.vamsideepak@gmail.iovamsideepak@gmail.comvamsideepak0@gmail.co.invamsideepak@gmail.info
Iam 当前使用的正则表达式匹配
vamsideepak@gmail.iova,msideepak@gmail.comv
依此类推。如果我将使用的表达式的顺序反转为匹配 . 之后字符数较少的表达式,则会导致反转匹配值:
vamsideepak@gmail.io,vamsideepak@gmail.co
等等。
我应该怎么做才能确保与案例 14 正确匹配。我应该分别验证使用这些组中的每一个吗?