How to read the last line in a textbox?

2020-03-24 03:28发布

I have a multiline textbox that constantly gets updated. I need to read only the last word/sentence in the textbox.

string lastLine = textBox1.ReadLine.Last();

3条回答
ら.Afraid
2楼-- · 2020-03-24 03:41

You can extract the last line from any string as follows:

string str = ....;

string[] lines = str.Split('\n', '\r');
string last_line = lines[lines.Length - 1];

To get the last line of a TextBox you can use:

string[] lines = textBox1.Text.Split('\n', '\r');
string last_line = lines[lines.Length - 1];
查看更多
萌系小妹纸
3楼-- · 2020-03-24 03:48

A textbox with the MultiLine property set to true has an array of Lines from which it is easy to extract the info required

int maxLines = textBox1.Lines.Length;
if(maxLines > 0)
{
    string lastLine = textBox1.Lines[maxLines-1];
    string lastWord = lastLine.Split(' ').Last();
}

A bit of caution here is needed. If your textBox still doesn't contain any lines you need to introduce a check on the number of lines present

查看更多
Deceive 欺骗
4楼-- · 2020-03-24 03:49

Try this:

if (textBox1.Lines.Any())
{
    string lastLine = textBox1.Lines[textBox1.Lines.Length - 1];
}

And for last word:

string lastword = lastLine.Split(' ').Last();
查看更多
登录 后发表回答