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

Chr*_*oph 0 c# enums

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

例如,我有以下枚举:

enum myEnum
{
   this,
   is,
   an,
   enum
};
Run Code Online (Sandbox Code Playgroud)

我有这样一个字符串:

string myString = "here I have a sample string containing an enum";
Run Code Online (Sandbox Code Playgroud)

因为字符串包含enum我想在字符串中找到它的关键字.

所以我需要一个像这样的功能string.contains(myString,myEnum).然后这个函数应该是真或假.当然我可以比较枚举中的每个值 - 但可能有一个更简单的方法......

我怎样才能做到这一点?

Mat*_*ted 7

你的妈妈......

public enum MyEnum
{
    @this,
    @is,
    an,
    @enum
}
Run Code Online (Sandbox Code Playgroud)

... 去检查 ...

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