gpt4 book ai didi

c# - 如何将多个枚举传递给只接收一个的方法?

转载 作者:太空狗 更新时间:2023-10-29 17:31:43 25 4
gpt4 key购买 nike

我想知道以下是否可行:

Regex.Match 方法可以接收枚举,因此我可以指定:

RegexOptions.IgnoreCase
RegexOptions.IgnorePatternWhiteSpace
RegexOptions.Multiline

如果我需要指定不止一个怎么办?(例如,我希望我的正则表达式是 Multiline 并且我希望它忽略模式空白)。

我可以像在 C/C++ 中那样使用 | 运算符吗?

最佳答案

你需要用[Flags]来注释它属性和使用 |运算符将它们组合起来。

在您提到的情况下,您可以这样做,因为 RegexOptions枚举用它注释。


更多引用:

A helpful way to use the FlagsAttribute with enumerations

来自上面 CodeProject 文章的示例片段:

定义:

[FlagsAttribute]
public enum NewsCategory : int
{
TopHeadlines =1,
Sports=2,
Business=4,
Financial=8,
World=16,
Entertainment=32,
Technical=64,
Politics=128,
Health=256,
National=512
}

使用:

mon.ContentCategories = NewsCategory.Business | 
NewsCategory.Entertainment |
NewsCategory.Politics;

关于c# - 如何将多个枚举传递给只接收一个的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6022306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com