我有一个字符串,其中包含很多行。现在根据我的要求,我必须将子字符串(文本)搜索到此字符串中,并找出字符串中存在此子字符串(文本)的行号。
一旦我得到行号,我必须阅读该行并了解其中的哪些内容是字符,什么是整数或数字。
这是我用来读取特定行的代码..
private static string ReadLine(string text, int lineNumber)
{
var reader = new StringReader(text);
string line;
int currentLineNumber = 0;
do
{
currentLineNumber += 1;
line = reader.ReadLine();
}
while (line != null && currentLineNumber < lineNumber);
return (currentLineNumber == lineNumber) ? line : string.Empty;
}
但是如何搜索包含特定文本(子串)的行号?
请帮帮我..
答案 0 :(得分:1)
好的我会简化。如何获取特定文本的行号 在c#
中的字符串中
然后你可以使用这个方法:
public static int GetLineNumber(string text, string lineToFind, StringComparison comparison = StringComparison.CurrentCulture)
{
int lineNum = 0;
using (StringReader reader = new StringReader(text))
{
string line;
while ((line = reader.ReadLine()) != null)
{
lineNum++;
if(line.Equals(lineToFind, comparison))
return lineNum;
}
}
return -1;
}