Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检查字符串是否至少包含枚举的一部分_C#_Enums - Fatal编程技术网

C# 检查字符串是否至少包含枚举的一部分

C# 检查字符串是否至少包含枚举的一部分,c#,enums,C#,Enums,是否有一种简单的方法可以使用C检查较长的字符串是否包含枚举的某个已定义部分 例如,我有以下枚举: enum myEnum { this, is, an, enum }; 我有这样一根弦: string myString = "here I have a sample string containing an enum"; 因为字符串包含关键字enum,所以我想在字符串中找到它 所以我需要一个像string.containsmyString,myEnum这样的函数。然后

是否有一种简单的方法可以使用C检查较长的字符串是否包含枚举的某个已定义部分

例如,我有以下枚举:

enum myEnum
{
   this,
   is,
   an,
   enum
};
我有这样一根弦:

string myString = "here I have a sample string containing an enum";
因为字符串包含关键字enum,所以我想在字符串中找到它

所以我需要一个像string.containsmyString,myEnum这样的函数。然后,此函数应返回true或false。 当然,我可以比较枚举中的每个值-但可能有一种更简单的方法


如何实现这一点?

首先,获取枚举的所有字符串值

List<string> s = new List<string>(Enum.GetNames(typeof(myEnum)));

首先,获取枚举的所有字符串值

List<string> s = new List<string>(Enum.GetNames(typeof(myEnum)));
你的emum

public enum MyEnum
{
    @this,
    @is,
    an,
    @enum
}
。。。检查

var myString = "here I have a sample string containing an enum";
var found = Enum.GetNames(typeof(MyEnum)).Any(e=>myString.Contains(e));
你的emum

public enum MyEnum
{
    @this,
    @is,
    an,
    @enum
}
。。。检查

var myString = "here I have a sample string containing an enum";
var found = Enum.GetNames(typeof(MyEnum)).Any(e=>myString.Contains(e));

@我们的答案是一样的,Matthew比我快了15秒。公平地说,你的也做了一个列表,而不仅仅是使用Enum.GetNames中的数组@我们的答案是一样的,Matthew比我快了15秒。公平地说,你的也做了一个列表,而不仅仅是使用Enum.GetNames中的数组;