我知道
parseInt(myString, 10) // "Never forget the radix"
如果字符串中的第一个字符是数字,将返回一个数字,但是如果我有一个像“column5”这样的字符串并且想要将它增加到下一个(“column6”),我该如何在 JavaScript 中执行此操作?
字符串末尾的位数是可变的。
我知道
parseInt(myString, 10) // "Never forget the radix"
如果字符串中的第一个字符是数字,将返回一个数字,但是如果我有一个像“column5”这样的字符串并且想要将它增加到下一个(“column6”),我该如何在 JavaScript 中执行此操作?
字符串末尾的位数是可变的。
parseInt("column5".slice(-1), 10);
您可以分别将 -1 或 -2 用于一到两位数字。
如果要指定任何长度,可以使用以下命令返回数字:
parseInt("column6445".match(/(\d+)$/)[0], 10);
以上将适用于任何长度的数字,只要字符串以一个或多个数字结尾
从文本中拆分数字,解析它,增加它,然后重新连接它。如果前面的字符串是众所周知的,例如“column”,你可以这样做:
var precedingString = myString.substr(0, 6); // 6 is length of "column"
var numericString = myString.substr(7);
var number = parseInt(numericString);
number++;
return precedingString + number;
试试这个:
var match = myString.match(/^([a-zA-Z]+)([0-9]+)$/);
if ( match ) {
return match[1] + (parseInt(match[2]) + 1, 10);
}
这将转换字符串,如text10
to text11
,TxT1
toTxt2
等。最后使用长数字。
将基数添加到 parseInt 调用,因为默认的 parseInt 值太magic
不可信。
有关详细信息,请参见此处:
http://www.w3schools.com/jsref/jsref_parseInt.asp
基本上它会将类似的东西转换成text010
不好text9
的东西;)。
var my_car="Ferrari";
var the_length=my_car.length;
var last_char=my_car.charAt(the_length-1);
alert('The last character is '+last_char+'.');
归功于http://www.pageresource.com/jscript/jstring1.htm
然后只增加 last_char
使用 RegEx 拆分单词和数字。
使用 parseInt() 增加数字。
附加到单词。
试着逐个字符地读取字符串,检查它的 ASCII 码。如果它从 48 到 57 你得到你的号码。尝试使用 charCodeAt 函数。然后只需拆分字符串,增加数字并完成。