与任何html标记都不匹配的正则表达式 - c#

我对regexp非常不好,我想要的是一个与任何html标记都不匹配的regexp(用于用户输入验证)。

我想要的是负面的:

<[^>]+>

我现在有的是

public class MessageViewModel
{
    [Required]
    [RegularExpression(@"<[^>]+>", ErrorMessage = "No html tags allowed")]
    public string UserName { get; set; }
}

但这与我想要的相反-只能使用html标签的用户名

参考方案

正则表达式不能进行“负”匹配。

但是他们可以进行“正”匹配,然后您可以将找到的所有内容排除在字符串之外。

编辑-更新问题后,情况变得更清晰了。试试这个:

public class MessageViewModel
{
    [Required]
    [RegularExpression(@"^(?!.*<[^>]+>).*", ErrorMessage = "No html tags allowed")]
    public string UserName { get; set; }
}

说明:

^            # start of string
(?!          # negative look-ahead (a position not followed by...)
  .*         #   anything
  <[^>]+>    #   something that looks like an HTML tag
)            # end look-ahead
.*           # match the remainder of the string

@ validation.api的@Pattern要在一个属性文件中配置所有模式 - java

谁能帮我从validation-api.1.1.jar配置@Pattern批注@Pattern(regex =“ PATTERN”)此配置很简单,但我的要求是要有一个包含所有具有键和值的模式的中央文件,作为模式.i.e属性文件。请您的帮助将不胜感激。 参考方案 不幸的是,拥有一个包含用于@Pattern注释的模式正则表达式的属性文件本身并不是真正可行的,因为…

ASP.NET在ContentPlaceHolderID之前添加DIV标签 - c#

我正在尝试使用C# / ASP.NET从Oracle Database中提取日期,如果该日期晚于某天,则隐藏表单的一部分。问题是,通常当我使用div runat=server从ASP.NET内部进行调用时,我只能说CONTROLID.Visible=true即可。出于某种原因,该表格在运行时会在服务器上运行的任何DIV前面加上“ mainContent _”…

asp.net中的目录浏览器 - c#

我正在使用http://www.codeproject.com/KB/aspnet/DirectoryBrowsing.aspx中使用的目录浏览器。当我在localhost上运行应用程序时,UNC路径工作正常。当我在IIS中部署应用程序时,UNC(共享驱动器/文件夹)无法正常工作。它找不到共享驱动器和文件夹?有任何想法吗? 参考方案 首先想到的是权限-检查用…

asp.net使用客户端验证而不发布到服务器 - c#

我有一个很长的表格,分为几个部分。我想利用内置的ASP.NET验证控件而不在提交表单之前将其回发到服务器。为了提供更多的上下文,让我解释一下我的想法。该表格分为几部分,每个部分都有一个“下一步”按钮。单击“下一步”按钮时,将使用ASP.NET包含的客户端代码来验证该部分。如果该部分有效,则jquery方法将隐藏该部分并显示下一个。当用户到达表单的最后部分时,…

asp.net中图像中的字符识别 - c#

我想拍摄一张图像,然后对该图像中的单词建立索引,让用户搜索该图像,然后在关键字周围突出显示该图像。因此,我需要一个OCR类,该类可以获取图像并为我提供带有其坐标的单词列表?可能? 参考方案 您可以使用Microsoft Office Document Imaging 12.0类型库来实现。样本:Converting Images to Text using …