Javascript 允许星号的电子邮件的JS正则表达式
我有一个JS正则表达式来检查电子邮件地址的有效性。这一切都很好,但最近我注意到它允许星号Javascript 允许星号的电子邮件的JS正则表达式,javascript,regex,Javascript,Regex,我有一个JS正则表达式来检查电子邮件地址的有效性。这一切都很好,但最近我注意到它允许星号*作为电子邮件的有效部分。我知道一些用户可能正在使用它,我不希望我的应用程序允许这样做 到目前为止,守则是: RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)
*
作为电子邮件的有效部分。我知道一些用户可能正在使用它,我不希望我的应用程序允许这样做
到目前为止,守则是:
RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/
请告知如何更改此设置,以便
*
在用户提供的电子邮件中成为无效字符。只需从正则表达式中删除转义星号即可。那么您的正则表达式将变成:
RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/
[编辑]
不要删除所有星号。只删除转义星号。只需从正则表达式中删除转义星号即可。那么您的正则表达式将变成:
RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/
[编辑]
不要删除所有星号。只删除转义的星号。为什么你不希望你的应用程序允许这样做呢?实际上,我的是一个大学管理应用程序,其中的数据是从扫描的OMR表中读取的,OMR软件的一个特点是它读取的空圈是
*
,因此大多数用户的电子邮件都是这样的,因此是错误的。现在,当他们编辑时,我想避免这个问题..好的,这是有效的:)根据经验,大多数人只想限制用户允许的电子邮件格式,因此我问你为什么不希望你的应用程序允许这样做?实际上,我的是一个大学管理应用程序,其中数据是从扫描的OMR表中读取的,OMR软件的一个特点是它读取空圆圈作为*
,因此大多数用户的电子邮件都是这样的,因此是错误的。现在,当他们编辑时,我想避免这个问题……好的,这是有效的:)根据经验,大多数人只想限制用户允许的电子邮件格式,所以我问了