【发布时间】:2015-08-30 09:04:48
【问题描述】:
所以我在下面有数百条这样的行(我修剪了很多),我想捕获 DEFAULT 值并设置为 0.99 但只有 WITH <Movement display_name="Movement 的行类型可以是会话或系统,与类型和最小值无关max,我是 REGEX 的新手,这是我能做的最好的,但这不是我想要的,我知道 regex 中存在替换但我无法完成第一部分,请帮助
真的 真的 错误的 真的 错误的 真的 错误的 真的 错误的 真的 错误的 真的 错误的 真的 错误的 红色的 蓝色 黄色的 绿色 白色的 浅灰色 深灰色 纯红 橘子 浅蓝色 深蓝 品红 浅绿色
<!--Default Values-->
<Indexed display_name="Indexed" type="system" datatype="pos_int" max="4" min="1" security_level="SU"
default_value="2" />
<IndexingColor1 display_name="IndexingColor1" type="system" datatype="list" security_level="SU"
default_value="RED">
<Cube>
<ShowFrame display_name="ShowFrame" type="system" datatype="list" security_level="CU"
default_value="true">
<list>
<ListItem>true</ListItem>
<ListItem>false</ListItem>
</list>
</ShowFrame>
<ShowFixedPoint display_name="ShowFixedPoint" type="system" datatype="list" security_level="CU"
default_value="true">
<list>
<ListItem>true</ListItem>
<ListItem>false</ListItem>
</list>
</ShowFixedPoint>
<FixedPointPosition display_name="FixedPointPosition" type="system" datatype="list" security_level="AU"
default_value="0">
<list>
<ListItem>-1</ListItem>
<ListItem>-0.5</ListItem>
<ListItem>0</ListItem>
<ListItem>0.5</ListItem>
<ListItem>1</ListItem>
</list>
<Timing>
<FirstPresentation display_name="FirstPresentation" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />
<Indexing display_name="Indexing" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />
**<Movement display_name="Movement" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />**
<Pause display_name="Pause" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />
<Feedback display_name="Feedback" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />
<Answer display_name="Answer" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />
<AutoValidate display_name="AutoValidate" type="system" datatype="float" max="0.0" min="0.0" security_level="CU"
default_value="0.0" />
</Timing>
MatchCollection Collections = Regex.Matches(parameters, "<Movement display_name=\"Movement\" type=\"(<type> .*?).*? min=\"(<min> .*?) .*? max=\"(<max> .*?)\" />", RegexOptions.Singleline);
foreach(Match match in Collections)
{
Console.WriteLine(match.Groups["type"].Value);
Console.WriteLine(match.Groups["max"].Value);
}
【问题讨论】: