我的字符串看起来像这样:
01
02
03
99
我想解析这些以使它们变成如下字符串:
1. 2. 3. 99. etc.
这些数字最多为2个字符。此外,我必须稍后在源字符串中解析更多数字,所以我想学习javascript中的子字符串等价物。有人可以给我建议如何做。以前我用C#做过以下事情:
int.Parse(RowKey.Substring(0, 2)).ToString() + "."
由于
答案 0 :(得分:1)
使用parseInt
功能。
parseInt(09)//这将给你9
var myString = parseInt("09").toString()+". "+parseInt("08").toString();
答案 1 :(得分:1)
为什么,parseInt
当然。
// Add 2 until end of string
var originalA = "01020399";
for (var i = 0; i < originalA.length; i += 2)
{
document.write(parseInt(originalA.substr(i, 2), 10) + ". ");
}
// Split on carriage returns
var originalB = "01\n02\n03\n99";
var strArrayB = originalB.split("\n");
for (var i = 0; i < strArrayB.length; i++)
{
document.write(parseInt(strArrayB[i], 10) + ". ");
}
// Replace the leading zero with regular expressions
var originalC = "01\n02\n03\n99";
var strArrayC = originalC.split("\n");
var regExpC = /^0/;
for (var i = 0; i < strArrayC.length; i++)
{
document.write(strArrayC[i].replace(regExpC, "") + ". ");
}
其他注意事项是JavaScript的输入类型较弱,因此"a" + 1
会返回"a1"
。此外,对于子字符串,您可以在substring(start, end)
和substr(start, length)
之间进行选择。如果您只是想拉一个字符,"abcdefg"[2]
将返回"c"
(从零开始的索引,因此2表示第三个字符)。当谈到简单的数字或字母时,你通常不必担心类型转换。
答案 2 :(得分:0)
var number = parseFloat('0099');
答案 3 :(得分:0)
string = '01\n02\n03\n99';
array = string.split('\n');
string2 = '';
for (i = 0; i < array.length; i++) {
array[i] = parseInt(array[i]);
string2 += array[i] + '. ';
}
document.write(string2);
答案 4 :(得分:0)
JavaScript中的子串如下:
string.substring(from, to);
其中from
包含且to
是独占的。您也可以使用切片:
string.slice(from, to)
其中from
包含且to
是独占的。切片和子串之间的区别在于切片可以指定负数。例如,from = -1
表示最后一个字符。 from(-1, -3)
将为您提供字符串的最后2个字符。
如果你没有指定end,那么使用这两种方法就可以得到所有字符。
保
答案 5 :(得分:0)
Ii他们总是2位数如何;
var s = "01020399";
var result = []
for (var i = 0; i < s.length; i+=2)
result.push(parseInt(s.substr(i, 2), 10) + ".")
alert( result[2] ) // 3.
alert( result.join(" ") ) // 1. 2. 3. 99.