Solved

Delete "White Spaces" in TMemo

Posted on 2004-09-08
3
404 Views
Last Modified: 2010-04-16
Hello All;

   I need to "Delete White Spaces"

I need all White Spaces in a TMemo to be deleted.

Example:
( Memo Outline )

-------------TOP----------------


above is "3" White Spaces
Below is "3" White Spaces



------------Bottom--------------

I need to have this located under a Button.

Any idea's on this will be great.

carrzkiss
0
Comment
Question by:Wayne Barron
3 Comments
 
LVL 17

Expert Comment

by:Wim ten Brink
ID: 12007189
To remove spaces:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text, #32, '', [rfReplaceAll]);

To remove empty lines:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text, #13#10#13#10, #13#10, [rfReplaceAll]);
0
 
LVL 14

Accepted Solution

by:
Pierre Cornelius earned 20 total points
ID: 12007896
Alex, your method won't work. e.g. if you have 2 blank lines, it will only delete the first line. You would have to repeat that statement until there are no more #13#10#13#10 pairs found.

Here's another way:

procedure RemoveBlankLines(var m: TMemo);
var i: integer;
begin
  i:= 0;
  while i < m.Lines.Count do
  begin
    if m.Lines[i] = '' then m.Lines.Delete(i) else i:= i+1;
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  RemoveBlankLines(Memo1);
end;

Regards
Pierre
0
 
LVL 30

Author Comment

by:Wayne Barron
ID: 12008512
Thank you [Pierre];

  Your code works very well.

Thank You for your time again, in this post.
I awarded you the points because your code works well.
Even though with the last question that I asked, that you both
Were a part of, this code here does it all.

for Q :=Memo1.Lines.Count -1 downto 0 do
 begin
  if pos( 'http://', lowercase(Memo1.Lines[Q]) ) = 0
   then Memo1.Lines.Delete(Q);
 end;

http://www.experts-exchange.com/Programming/Programming_Languages/Delphi/Q_21123097.html

From Everst

Thank you all

Wayne
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question