O'Reilly logo

Actionscript Cookbook by Joey Lott

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

9.12. Trimming Whitespace

Problem

You want to trim the whitespace from the beginning and end of a string.

Solution

Write a custom trim( ) method that splits the string into an array of characters, removes the whitespace from the beginning and end, and then returns the character array as a string using join( ).

Discussion

Extra whitespace at the beginning and end of a string is a common enough annoyance that you should have a way of dealing with it. ActionScript does not provide a native trim( ) method, so you have to write your own.

The custom trim( ) method presented here:

  1. Splits the string into an array or characters

  2. Removes whitespace elements at the beginning of the array until it finds an element that is not a whitespace character (tab, form feed, carriage return, newline, or space)

  3. Removes whitespace elements at the end of the array

  4. Uses join( ) to form the array characters into a single string and returns that value

Here is our custom String.trim( ) function. You can add it to a String.as file for easy inclusion in other projects.

String.prototype.trim = function (  ) {

  // Split the string into an array of characters.
  var chars = this.split("");

  // Remove any whitespace elements from the beginning of the array using splice(  ).
  // Use a break statement to exit the loop when you reach a non-whitespace character // to prevent it from removing whitespace in the middle of the string. for (var i = 0; i < chars.length; i++) { if (chars[i] == "\r" || chars[i] == "\n" || chars[i] == "\f" || ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required