i试图找到从E到M(E-M)开始的列表中的第一个字符串;
startIndexOfMiddleRange = list.IndexOf(list.FirstOrDefault(x => x.Name.StartsWith(())))
我应该怎样做?感谢帮助者
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>,您可以进一步简化它:
list
List<T>
startIndexOfMiddleRange = list.FindIndex(x => x.Name.Length > 0 && x.Name[0] >= 'E' && x.Name[0] <= 'M');
1条答案
按热度按时间mklgxw1f1#
Regex溶液:
^[E-M]
-这个模式应该可以工作。^
的意思是“开始于”[E-M]
将范围限制为E-M,因为您没有在它上使用任何修饰符,所以它将只选择一个字符。话虽如此,使用正则表达式似乎有点矫枉过正,因为你可以简单地做到:
假设
list
是一个List<T>
,您可以进一步简化它: