字符串中的数字和字母分隔

时间:2016-06-30 11:36:51

标签: javascript string variables split alphanumeric

我在Javascript中有String变量,如:

  

var houseNo =“62A”;
var cabinNo =“5BC”;

我需要 从字符串中取出整数和字母 ,其中每个字符串的出现次数可以是任意次。

需要帮助以最佳方式完成,无论是lodash还是其他任何原型方法。

提到this但是徒劳无功,因为不希望它通过RegEx。

3 个答案:

答案 0 :(得分:0)

试试这个:

    var houseNo = "62A"; 
    foreach(char a in houseNo)
    {
        if(a > 48 && a < 57)
        {
         /*it's a number*/
        }
        else 
        {
            /*it's a letter*/
        }
    }

您可以在每个字符串上应用它,并确定您要对每个数字或字母执行的操作。

答案 1 :(得分:0)

类似的东西:

function decompose(string){ 
     for(var i=0;i<string.length;i++){
             if(parseInt(string[i])){ // if the char is a number?
                // do whatever you want
             }else{
                // it's a character
             }  
      }
}

parseInt()函数返回给予者char的编号。如果它不是数字,则返回NaN(不是数字)。 if(parsInt(char)) false如果是个字符,则返回trueangular.module('farm') .factory('beforeUnload', function ($rootScope, $window) { // Events are broadcast outside the Scope Lifecycle $window.onbeforeunload = function (e) { var confirmation = {}; var event = $rootScope.$broadcast('onBeforeUnload', confirmation); if (event.defaultPrevented) { return confirmation.message; } }; $window.onunload = function () { $rootScope.$broadcast('onUnload'); }; return {}; }) .run(function (beforeUnload) { // Must invoke the service at least once }); 如果是个号

答案 2 :(得分:0)

var test = "a3434dasds3432s2"
var myString = test.split("").filter(function(v) {return isNaN(v)}).join("")
var myNumber = parseInt(test.split("").filter(function(v) {return !isNaN(v)}).join(""))

最好真正使用正则表达式。