I am performing email address validation with javascript in a razor view page. The regex I am going to use is similar to the one proposed at Validate email address in JavaS
Simply just use double @@
.
It works for me and I think that is the only way.
Put the following inside the regEx instead of @:
@('@')
The above will be rendered to a single @.
Your example will become:
/^...otherpart @('@')* ... other part$/
You can add another @
in front of it to escape @@
, try leaving out the quantifer *
. If this doesn't seem to work then add <text></text>
around the function, it tells Razor to not parse the contents. Alternatively you can put Javascript in a separate file to accomplish your needs.
If for some reason you have multiple @@
in your string, place code blocks ahead @:@@
It's better to use @('@') instead of @@ (not working for me). Example
<input class="form-control" pattern="^[a-zA-Z@('@')]{5,20}$"/>