Software Venture Consulting

FileMaker Pro downloads & Resources
FileMaker Custom Functions
FileMaker Web Viewer Examples
FileMaker Pro & Lasso Consulting
FileMaker Books
FileMaker Articles
FileMaker Error Reference

Free Web Tools
Free FileMaker Tools

Personal Pages

Shopping Cart
Shopping Cart


Free Newsletter


Privacy Policy

FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.


 FileMaker Pro Custom Functions

List  |  Show Random  |  Upload  |  Add This to Your Site

NormalizeSpace ( text )

Rate this function:  

  Average rating: 4.5  (13 votes)
  Discuss this Custom Function

Michael Horak, *COMMENT Visual Realisation

Strips leading and trailing whitespace characters and replaces sequences of whitespace characters with a single space.

Sample Input:
NormalizeSpace ( "          Some text with
multiple         runs        of      spaces,                  tabs,

and carriage returns.

" )
Sample Output:
"Some text with multiple runs of spaces, tabs, and carriage returns."

 Then copy & paste into FileMaker Advanced's Edit Custom Function window.

Click here to copy To Clip Manager if you have myFMbutler's Clip Manager installed


Returns text with whitespace normalized by stripping all leading and trailing whitespace characters and replacing sequences of whitespace characters with a single space character.

Whitespace characters are space, horizontal tab, line feed, carriage return and non-breaking space.

This function is not recursive.

Note: these functions are not guaranteed or supported by Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it


Nice function, very well made.
But, imho, it should eliminate all UNNECESSARY carriage returns exceeding the first one.
I tried on a file where I save all my emails and it creates a jumble of words barely readable.
I always wanted to get rid of the profusion of not needed carriage returns, but not of the ones that keeps the legibility to an acceptable minimum.

Inizio messaggio inoltrato: Da: Rodolfo Di Maggio <> Oggetto: Progetto "Xxxxxx" Data: 8 luglio 2016 16:20:32 CEST A: Dott.ssa Xxxxx, ho ricevuto da mio f...
It should format this way:
Inizio messaggio inoltrato:
Da: Rodolfo Di Maggio <>
Oggetto: Progetto "Xxxxxx"
Data: 8 luglio 2016 16:20:32 CEST
A: Dott.ssa Xxxxx, ho ricevuto da mio f...

Rudy Di Maggio, Lodi, Italy
August 24, 2016 2:12pm

@Rudy Di Maggio

I am not sure how a function can tell the difference between a "necessary" carriage return and an "unnecessary" one. Anyway, this is not within the scope of THIS function. I suggest you post your problem in one of the forums.

comment, VR
August 24, 2016 2:38pm

Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:

Your Name:
characters left. If you paste in more than 1500 characters, it will be truncated. Discuss the function - advertisements and other useless posts will be deleted.
Answer 5 + 6 =
Search for Custom Functions:

Custom Functions Widget
Download the Custom Function Dashboard Widget for OS X
Keep all the latest Custom Functions right at your fingertips!

Newest Custom Functions:

1. ExcludeValues(MyList ; Out)
  (Wed, Mar 21, 7:23am)
2. PreviousMonthEndDate ( myDate )
  (Wed, Mar 07, 3:35am)
3. PreviousMonthName (myDate)
  (Wed, Mar 07, 3:33am)
4. FmTableFields ( tableName ; fieldsInclude ; fieldsExclude ; classExclude ; typeExclude ; prefixExclude )
  (Fri, Mar 02, 6:32am)
5. sql.getTable ( fullyQualifiedFieldObject )
  (Thu, Feb 22, 8:36am)
6. sql.getField ( fullyQualifiedFieldObject )
  (Thu, Feb 22, 8:34am)
7. FilterOut ( ListA ; ListB )
  (Wed, Feb 21, 6:11pm)
8. Char0 ( )
  (Sun, Feb 18, 2:35am)

RSS Feed of Custom Functions