【发布时间】:2016-08-25 16:29:13
【问题描述】:
我有以下cshtml页面:
<div class="container ptb-60">
<div class="row featurette">
<div class="col-md-7">
<h2 class="featurette-heading">@ViewData["PageTitle"]</h2>
<p class="lead">@ViewData["Excerpt"]</p>
<p>
<a class="btn btn-primary btn-lg" href="@ViewData["Template.HeaderButton.Url"]" role="button">@ViewData["Template.HeaderButton.Text"]</a>
</p>
</div>
<div class="col-md-5">
<img class="featurette-image img-responsive center-block" src="@ViewData["Template.HeaderButton.Image"]" alt="@ViewData["Template.HeaderButton.AltText"]">
</div>
</div>
我想提取@ViewData 的所有变量值——所以对于这个例子,我想得到一个匹配列表,其中包含:
"PageTitle"
"Excerpt"
"Template.HeaderButton.Url"
"Template.HeaderButton.Text"
"Template.HeaderButton.Image"
"Template.HeaderButton.AltText"
到目前为止,我最大的努力是使用这个:Regex regex = new Regex(@"""[^""\\]*(?:\\.[^""\\]*)*"""); 来提取所有字符串值(在语音标记之间),但这与某些值混淆了,我需要搜索 @ViewData["GET_THIS_BIT_AS_A_MATCH"]
试过这个:@"""[^@ViewData\[""\\]*(?:\\.[^""\]\\]*)*"""
但没有运气!我有点像 RegX 菜鸟!!!有人可以帮忙吗?
谢谢!
【问题讨论】: