如何解析包含\ n的变量?

时间:2012-12-03 21:35:07

标签: javascript regex string node.js mongodb

我的mongoDB文档中有一个非常奇怪的数字。我将整个对象复制到node控制台。我在这里输出它。我认为它有字符串\n和实际文字\n的组合或奇怪的事情。有人可以告诉我如何将数字567899876545678987654作为字符串从下面的变量中获取吗?

> number
'--- \n- "567899876545678987654"\n- \n'
> JSON.stringify(number);
'"--- \\n- \\"567899876545678987654\\"\\n- \\n"'
> number.replace("\n","");
'--- - "567899876545678987654"\n- \n'
> number.replace(/\n/,"");
'--- - "567899876545678987654"\n- \n'
> number.replace(/-/,"");
'-- \n- "567899876545678987654"\n- \n'

1 个答案:

答案 0 :(得分:5)

为什么不对所有数字使用正则表达式而不是尝试删除其余数字?

actualNumber = number.match(/\d+/);

作为T.J. Crowder指出,actualNumber现在将是一个包含数字的数组(如果有一个数字)。正如他所说,这将安全地检索实际数字:

var m = number.match(/\d+/);
if (m) { 
    actualNumber = m[0];
}