在 razor 中使用包含 '@' 的 JavaScript 正则表达式
Using javascript regex containing '@' in razor
我正在剃刀视图页面中使用javascript执行电子邮件地址验证。我将要使用的正则表达式类似于在 JavaScript 中验证电子邮件地址中提出的正则表达式?
但是,由于正则表达式包含"@"字符,因此我在尝试运行 Web 应用程序时收到解析器错误。
我的正则表达式看起来像
/^...otherpart @* ... other part$/
我试图添加一个"@"字符来制作原始正则表达式... @@* ...,这消除了编译错误,但似乎使正则表达式停止工作。(我们已经在另一个不使用 Razor 引擎的 Web 应用程序中使用了它,所以我知道它可以工作)。
还有其他方法可以转义"@"字符吗?
可以在它前面再加一个@
来转义@@
,试着省略量词*
。如果这似乎不起作用,请在函数周围添加<text></text>
,它告诉 Razor 不要解析内容。或者,您可以将Javascript放在单独的文件中以满足您的需求。
如果由于某种原因字符串中有多个@@
,请将代码块放在前面@:@@
将以下内容放在正则表达式中而不是@中:
@('@')
以上内容将呈现为单个 @。
您的示例将变为:
/^...otherpart @('@')* ... other part$/
只需使用双@@
即可。
它对我有用,我认为这是唯一的方法。
最好使用 @('@
') 而不是 @@(对我不起作用)。例
<input class="form-control" pattern="^[a-zA-Z@('@')]{5,20}$"/>
相关文章:
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 将javascript正则化为vb
- 将po-box javascript正则表达式转换为c#regex
- 被javascript正则表达式分组卡住了
- 从字符串中提取年份的Javascript正则表达式
- 尝试使用Javascript正则表达式来获取“&"分隔文本,无论它是否's是最后一个值
- JavaScript正则表达式匹配量
- 在字符串列表中搜索任何出现的单词,如果单词的第一个字符匹配,则高亮匹配单词.Javascript正则表达式
- javascript正则表达式来识别所有特殊字符
- Javascript-正则表达式,用于在未转义字符上拆分字符串,例如|,但忽略|
- 查找所有注释的JavaScript正则表达式
- javascript正则表达式验证未按预期工作
- javascript正则表达式,用于匹配带数字和不带数字的字符串
- 模仿负查找以匹配JavaScript正则表达式中没有紧跟特定字符的模式
- JavaScript正则表达式(带_-的字母数字字符)
- 用特定的javascript正则表达式替换每个单词
- 搜索日历事件的Javascript正则表达式
- 如何获取 JavaScript 正则表达式子匹配的位置
- 正则表达式子字符串以JavaScript开始和结束