我需要在字符串数组中查找某个项目的索引,其中该项目的值与特定模式匹配。
示例数组和值:
string[] stringArray = { "roleName","UserID=000000","OtherID=11111" }
我需要获取值以“UserID=”开头的项目的索引。我知道我可以迭代数组并将每个值与正则表达式匹配,但这听起来又慢又乱。我正在考虑做这样的事情:
int indexIneed = Array.IndexOf(stringArray,"\bUserID=");
但我以前从未真正遇到过正则表达式的麻烦,所以我像个 child 一样摸索着。有没有办法可以在 O(n) 时间内完成我想要做的事情,或者我是否必须诉诸迭代?
最佳答案
FindIndex
会给你你想要的:
int indexIneed = Array.FindIndex(stringArray,s => s.StartsWith("UserID="));
关于C# 返回数组的索引,其中值与任意字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28307985/