繁体   English   中英

在.NET中添加删除RegEx选项

[英]Add Remove RegEx Options in .NET

我想将regex选项作为用户输入,我使用复选框来获取输入,如下所示:

[ ]IngoreCase  
[ ]Multiline  
[ ]Sigleline  
[ ]RightToLeft  

等等

我的问题是我如何根据用户选择的选项传递参数(RegexOptions)。

谢谢,
阿米特

使用Enum.GetNames

string[] names = Enum.GetNames(typeof(RegexOptions));

从字符串回到枚举

var option = (RegexOptions)Enum.Parse(typeof(RegexOptions), "IgnoreCase");

当您使用这些选项时,将它们“或”组合成一个值。 在正则表达式调用中的1语句中没有必要这样做,你可以使用类似的东西:

var options = RegexOptions.None;
if (checkBoxIgnoreCase.Checked) options = options | RegexOptions.IgnoreCase;
if (checkBoxMultiLine.Checked) options = options | RegexOptions.MultiLine;
// etc.

并在Regex.Match使用该options值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM