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

标签 c# arrays regex string

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

示例数组和值:

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/

相关文章:

c# - 在 C# 中创建 MS Teams 团队 - AddAsync 返回 null

C# - 创建字符串到特定范围之间的整数的哈希值

c# datagridview 使用 FullRowSelect 双击行

c++ - 读写文件到数组

c# - Log4Net:处置 MemoryAppender

javascript - 如何通过字符差异作为分隔符来拆分字符串?

php - 如何一次循环遍历两个数组?

javascript - 正则表达式返回空字符空间并且未定义?

Javascript RegExp 返回不需要的字符

php - 如何使用正则表达式检查字符串是否仅包含某些允许的字符?