regex 查找字符串startwith(正则表达式)

pinkon5k  于 2023-06-25  发布在  其他
关注(0)|答案(1)|浏览(113)

i试图找到从E到M(E-M)开始的列表中的第一个字符串;

startIndexOfMiddleRange = list.IndexOf(list.FirstOrDefault(x => x.Name.StartsWith(())))

我应该怎样做?
感谢帮助者

mklgxw1f

mklgxw1f1#

Regex溶液:
^[E-M]-这个模式应该可以工作。

  • ^的意思是“开始于”
  • [E-M]将范围限制为E-M,因为您没有在它上使用任何修饰符,所以它将只选择一个字符。

话虽如此,使用正则表达式似乎有点矫枉过正,因为你可以简单地做到:

startIndexOfMiddleRange = list.IndexOf(list.FirstOrDefault(x => x.Name.Length > 0 && x.Name[0] >= 'E' && x.Name[0] <= 'M'));

假设list是一个List<T>,您可以进一步简化它:

startIndexOfMiddleRange 
    = list.FindIndex(x => x.Name.Length > 0 && x.Name[0] >= 'E' && x.Name[0] <= 'M');

相关问题