C#返回数组的索引,其中value与任意字符串匹配

时间:2015-02-03 20:18:57

标签: c# arrays regex string

我需要在一个字符串数组中找到一个项目的索引,其中该项目的值与某个模式匹配。

示例阵列&值:

string[] stringArray = { "roleName","UserID=000000","OtherID=11111" }

我需要获取其值以" UserID ="开头的项目的索引。我知道我可以迭代数组并将每个值与正则表达式匹配,但这听起来很慢而且很混乱。我在考虑做这样的事情:

int indexIneed = Array.IndexOf(stringArray,"\bUserID=");

但我以前从来没有真正搞过正则表达式,所以我像小孩一样摸索着。我有没有办法完成我在O(n)中要做的事情,或者我将不得不求助于迭代?

1 个答案:

答案 0 :(得分:5)

FindIndex会为您提供所需内容:

int indexIneed = Array.FindIndex(stringArray,s => s.StartsWith("UserID="));