繁体   English   中英

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

[英]Check if string contains at least one part of an enum

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

例如,我有以下枚举:

enum myEnum
{
   this,
   is,
   an,
   enum
};

而且我有这样一个字符串:

string myString = "here I have a sample string containing an enum";

由于该字符串包含关键字enum我想在字符串中找到它。

所以我需要像string.contains(myString,myEnum)这样的函数。 然后,应将此功能调为true或false。 我当然可以比较枚举中的每个值-但可能会有更简单的方法...

我该如何实现?

你的em ...

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));

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

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

然后,检查是否存在!

s.Any(s=> myString.Contains(s));

暂无
暂无

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

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