mvc3 regularrexpression问题

时间:2012-12-24 01:15:47

标签: regex asp.net-mvc-3

我在我的页面上有一个regularrexpression以允许HTML的某些标记我允许“p”但是如果有人把“p style =”它作为无效字符出现我怎么能改变它以允许“p style =”

[AllowHtml]
    [RegularExpression(@"^([^<]|<em>|</em>|<p>|</p>|<i>|</i>|<b>|</b>|<strong>|</strong>|a z|A Z|1 9|(.\.))*$", ErrorMessage = "Invalid character")]

2 个答案:

答案 0 :(得分:0)

你改变了这个位

<p>

到这个

<p( style=)?>

但可能您希望允许样式标记中的内容,如<p style="width:20">

可能是

<p( style="[^"]*")

单引号怎么样? <p style='width:20'>

<p( style=["'][^"']*["'])

但是真正的答案不是使用正则表达式来解析HTML,它肯定会出错。我不使用asp.net,但我想有可用的库。

答案 1 :(得分:0)

<p>部分更改为: <p( style=('[^']*'))?>

请注意?使样式可选。

支持'引用'样式。如果您愿意,可以使用“双引号”样式执行类似操作。