How to read the last line in a textbox?
Asked Answered
A

3

5

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();
Astrict answered 3/10, 2015 at 15:42 Comment(0)
M
10

Try this:

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

And for last word:

string lastword = lastLine.Split(' ').Last();
Microfiche answered 3/10, 2015 at 15:47 Comment(0)
N
2

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

Nucellus answered 3/10, 2015 at 15:49 Comment(0)
L
2

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];
Linkwork answered 3/10, 2015 at 15:53 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.