Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Left Trim in Javascript

there are lots of scripts out there to trim a string in javascript, but none how to Left Trim String.

This is what I use to trim:

String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g,"");
}

But I would like to change this a little and create a new function called leftTrim that only removes the leading space. My regex is pretty limited, so any help is much appreciated.

Cheers

like image 871
jamesmhaley Avatar asked Oct 20 '09 11:10

jamesmhaley


1 Answers

Use:

String.prototype.leftTrim = function() {
    return this.replace(/^\s+/,"");
}

In the regex the:

  • ^ means "from the beginning of the string"
  • \s means whitespace character class
  • + means one-or more (greedy)

so....

  • ^\s+ means "one or more consecutive whitespace characters from the beginning of the class"

Note: The g flag at the end of your regex is unnecessary as the anchors (^ and $) explicitly define what will match. There cannot be multiple matches.

See https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/RegExp for details on regex syntax in javascript

like image 178
Jonathan Fingland Avatar answered Oct 18 '22 23:10

Jonathan Fingland