C# 如何在带有正则表达式的电子邮件中只允许双反斜杠?
我正在尝试接受电子邮件中类似用户名的C# 如何在带有正则表达式的电子邮件中只允许双反斜杠?,c#,regex,email,C#,Regex,Email,我正在尝试接受电子邮件中类似用户名的\\和/符号前面的@。 下面是我们正在使用的当前正则表达式: ^([\w-\.]+)@(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.}.[0-9]{1,3}.]([\w-]+\.+)([a-zA-Z]{2,4}.[0-9]{1,3})(\]?)$ 我只希望允许双反斜杠的原因是,我希望在使用此正则表达式验证该字符串是否为有效用户名时对其进行转义 有效和无效用例: 你好\\world@email.com有效 你好\world@email.
\\
和/
符号前面的@
。
下面是我们正在使用的当前正则表达式:
^([\w-\.]+)@(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.}.[0-9]{1,3}.]([\w-]+\.+)([a-zA-Z]{2,4}.[0-9]{1,3})(\]?)$
我只希望允许双反斜杠的原因是,我希望在使用此正则表达式验证该字符串是否为有效用户名时对其进行转义
有效和无效用例:
hello@email.com
有效^([\w-(\\\\)/\.]+)@(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.\)([\w-]+\.+)([a-zA-Z]{2,4}.[0-9]{1,3})(\]?)$
您需要在开始时添加负前瞻
^(?![^@]*?(?:\\\\\\|(?<!\\)\\(?!\\)))([\w-\\\\/.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
^(?![^@]*?(?:\ \ \ \ \ \ \ \ \(?)?
@(?m)^(?![^@]*?(?:\\\\\\\\\\\\\\\\\\(?您需要在开始处添加负前瞻
^(?![^@]*?(?:\\\\\\|(?<!\\)\\(?!\\)))([\w-\\\\/.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
^(?![^@]*?(?:\ \ \ \ \ \ \ \ \(?)?
@(?m)^(?![^@]*?(?:\\\\\\\\\\\\\\\\\\(?您需要在开始处添加负前瞻
^(?![^@]*?(?:\\\\\\|(?<!\\)\\(?!\\)))([\w-\\\\/.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
^(?![^@]*?(?:\ \ \ \ \ \ \ \ \(?)?
@(?m)^(?![^@]*?(?:\\\\\\\\\\\\\\\\\\(?您需要在开始处添加负前瞻
^(?![^@]*?(?:\\\\\\|(?<!\\)\\(?!\\)))([\w-\\\\/.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
^(?![^@]*?(?:\ \ \ \ \ \ \ \ \(?)?
“(?m)^(?![^@]*?(?:\ \ \ \ \ \ \ \(?如何转义取决于您使用的语言,但下面是:
^(([-\w\/\.]|\\\\)+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
我所做的只是在第一组中添加一个正斜杠\/
,并添加两个反斜杠作为替代\\\\
。
以下是C#转义版本:
^(([-\\w\\/\\.]|\\\\\\\\)+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$
它应该如何转义取决于您使用的语言,但现在您可以:
^(([-\w\/\.]|\\\\)+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
我所做的只是在第一组中添加一个正斜杠\/
,并添加两个反斜杠作为替代\\\\
。
以下是C#转义版本:
^(([-\\w\\/\\.]|\\\\\\\\)+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$
它应该如何转义取决于您使用的语言,但现在您可以:
^(([-\w\/\.]|\\\\)+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
我所做的只是在第一组中添加一个正斜杠\/
,并添加两个反斜杠作为替代\\\\
。
以下是C#转义版本:
^(([-\\w\\/\\.]|\\\\\\\\)+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$
它应该如何转义取决于您使用的语言,但现在您可以:
^(([-\w\/\.]|\\\\)+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
我所做的只是在第一组中添加一个正斜杠\/
,并添加两个反斜杠作为替代\\\\
。
以下是C#转义版本:
^(([-\\w\\/\\.]|\\\\\\\\)+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([\\w-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$
试试这个
^([\w]+)((\\\\)*(/)*(\.)*)([\w]*)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
试试这个
^([\w]+)((\\\\)*(/)*(\.)*)([\w]*)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
试试这个
^([\w]+)((\\\\)*(/)*(\.)*)([\w]*)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
试试这个
^([\w]+)((\\\\)*(/)*(\.)*)([\w]*)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
只在at符号之前?@AvinashRaj:问得好。是的,没错!是喂\/world@email.com
valid?C#用另一个“`so no.Tarik检查我的ans..对我有效..只在at符号之前?@AvinashRaj:问得好。是的!是你好吗\/world@email.com
valid?C#转义反斜杠wi另一个“不,塔里克检查我的ans。它对我有效。只在at符号之前?@AvinashRaj:好问题。是的,没错!是你好吗\/world@email.com
valid?C#用另一个“`所以不。塔里克检查我的ans。.它对我有用。.只在at符号之前?@AvinashRaj:好问题。是的,没错!是
valid?C#用另一个“`so no.Tarik check my ans..it work for me..Matcheshello”来逃避反斜杠\/world@email.com
也一样。它起作用了,但不是用C语言。我应该指定我使用C语言的事实。@AvinashRaj:不是我,而是添加了+1。Matches你好\/world@email.com
太好了。它起作用了,但不是用C语言。我应该说明我使用C语言的事实。@AvinashRaj:不是我,而是添加了+1.Matcheshello\/world@email.com
也一样。它起作用了,但不是用C语言。我应该指定我使用C语言的事实。@AvinashRaj:不是我,而是添加了+1。Matches你好\/world@email.com代码>也是。它可以工作,但不是用C语言。我应该指定我使用C语言的事实。@AvinashRaj:不是我,而是添加了+1。