Skip to content

Instantly share code, notes, and snippets.

@rcstr
Forked from getify/gist:6218614
Created August 13, 2013 16:13
Show Gist options
  • Select an option

  • Save rcstr/6222808 to your computer and use it in GitHub Desktop.

Select an option

Save rcstr/6222808 to your computer and use it in GitHub Desktop.

Revisions

  1. @getify getify revised this gist Aug 13, 2013. 1 changed file with 3 additions and 4 deletions.
    7 changes: 3 additions & 4 deletions gistfile1.js
    Original file line number Diff line number Diff line change
    @@ -1,9 +1,9 @@
    // Visualize at:
    // http://www.regexplained.co.uk/?pattern=%2F(%3F%3A0%5BxXbBoO%5D%5B0-9a-fA-F%5D%2B)%7C(%3F%3A%5Cd%2B%5C.%5Cd*(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%7C(%3F%3A%5C.%5Cd%2B(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%7C(%3F%3A%5Cd%2B(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%2F
    // http://www.regexplained.co.uk/?pattern=%2F%5E(%3F%3A(%3F%3A0%5BxX%5D%5B0-9a-fA-F%5D%2B)%7C(%3F%3A0%5BoO%5D%5B0-7%5D%2B)%7C(%3F%3A0%5BbB%5D%5B01%5D%2B)%7C(%3F%3A%5Cd%2B%5C.%5Cd*(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%7C(%3F%3A%5C.%5Cd%2B(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%7C(%3F%3A%5Cd%2B(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F))%24%2F

    function isNumberLiteral(txt) {
    var re = /^(?:(?:0[xXbBoO][0-9a-fA-F]+)|(?:\d+\.\d*(?:[eE][+-]?\d+)?)|(?:\.\d+(?:[eE][+-]?\d+)?)|(?:\d+(?:[eE][+-]?\d+)?)$)/;
    return re.test(txt) && !isNaN(txt);
    var re = /^(?:(?:0[xX][0-9a-fA-F]+)|(?:0[oO][0-7]+)|(?:0[bB][01]+)|(?:\d+\.\d*(?:[eE][+-]?\d+)?)|(?:\.\d+(?:[eE][+-]?\d+)?)|(?:\d+(?:[eE][+-]?\d+)?))$/;
    return re.test(txt);
    }

    isNumberLiteral("42"); // true
    @@ -20,4 +20,3 @@ isNumberLiteral("42e-3"); // true
    isNumberLiteral("42.e-3"); // true
    isNumberLiteral("0xaa"); // true
    isNumberLiteral("042"); // true

  2. @getify getify revised this gist Aug 13, 2013. 1 changed file with 0 additions and 2 deletions.
    2 changes: 0 additions & 2 deletions gistfile1.js
    Original file line number Diff line number Diff line change
    @@ -6,8 +6,6 @@ function isNumberLiteral(txt) {
    return re.test(txt) && !isNaN(txt);
    }

    isNumberLiteral("

    isNumberLiteral("42"); // true
    isNumberLiteral("-42"); // false
    isNumberLiteral(".42"); // true
  3. @getify getify revised this gist Aug 13, 2013. 1 changed file with 18 additions and 0 deletions.
    18 changes: 18 additions & 0 deletions gistfile1.js
    Original file line number Diff line number Diff line change
    @@ -5,3 +5,21 @@ function isNumberLiteral(txt) {
    var re = /^(?:(?:0[xXbBoO][0-9a-fA-F]+)|(?:\d+\.\d*(?:[eE][+-]?\d+)?)|(?:\.\d+(?:[eE][+-]?\d+)?)|(?:\d+(?:[eE][+-]?\d+)?)$)/;
    return re.test(txt) && !isNaN(txt);
    }

    isNumberLiteral("

    isNumberLiteral("42"); // true
    isNumberLiteral("-42"); // false
    isNumberLiteral(".42"); // true
    isNumberLiteral("0.42"); // true
    isNumberLiteral("42."); // true
    isNumberLiteral("42.3"); // true
    isNumberLiteral("42."); // true
    isNumberLiteral("42e3"); // true
    isNumberLiteral("42.e3"); // true
    isNumberLiteral(".42e3"); // true
    isNumberLiteral("42e-3"); // true
    isNumberLiteral("42.e-3"); // true
    isNumberLiteral("0xaa"); // true
    isNumberLiteral("042"); // true

  4. @getify getify created this gist Aug 13, 2013.
    7 changes: 7 additions & 0 deletions gistfile1.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,7 @@
    // Visualize at:
    // http://www.regexplained.co.uk/?pattern=%2F(%3F%3A0%5BxXbBoO%5D%5B0-9a-fA-F%5D%2B)%7C(%3F%3A%5Cd%2B%5C.%5Cd*(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%7C(%3F%3A%5C.%5Cd%2B(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%7C(%3F%3A%5Cd%2B(%3F%3A%5BeE%5D%5B%2B-%5D%3F%5Cd%2B)%3F)%2F

    function isNumberLiteral(txt) {
    var re = /^(?:(?:0[xXbBoO][0-9a-fA-F]+)|(?:\d+\.\d*(?:[eE][+-]?\d+)?)|(?:\.\d+(?:[eE][+-]?\d+)?)|(?:\d+(?:[eE][+-]?\d+)?)$)/;
    return re.test(txt) && !isNaN(txt);
    }