String str =" vol ABCD C XYZ";
我想返回“A”的索引
注意:在包括第一个单词的所有单词之前有多个空格。
答案 0 :(得分:0)
这将获得原始示例中的A的索引(String str =" vol ABCD C XYZ";
):
int indexOfABCD = str.IndexOf(str.Trim()[str.Trim().IndexOf(' ')+1]);
如果你有String str = " vol ABCD C XYZ";
这样的地方有多个空格:
string secondword = str.Split(new[] { " " }, StringSplitOptions.RemoveEmptyEntries)[1];
int indexOfAinABCD = str.IndexOf(secondword.First());
如果你想获得第二个单词中所有字母的索引:
IEnumerable<int> fullindex = Enumerable.Range(indexOfAinABCD, secondword.Length);
编辑:
如果你在第一个单词中的其他地方有A,那么这将失败。你应该通过Regex获得完全匹配:
int indexOfAinABCD = Regex.Match(str, string.Format(@"\W{0}\W",secondword)).Index+1;
IEnumerable<int> fullindex = Enumerable.Range(indexOfAinABCD, secondword.Length);
像String str = " vABCDol ABCD C XYZ";
之类的东西不会成为问题