删除数字中的空格-保持原样

时间:2019-06-24 12:45:21

标签: regex google-apps-script

完全公开:我不是程序员(可能在一秒钟之内就会明白)。我经常将一张纸上的数字复制到另一张纸上,大于999的数字在第一个数字和第二个数字之间有一个空格。我试图制作脚本(在这里找到的类似脚本的帮助下),只需单击一下按钮就可以删除这些空格,但这只能起作用。

这是一个包含我的代码的样本表:https://3v4l.org/UVUsr

我已尽力修改Regex表达式以执行我想要的操作,但我想我的知识太差了。

 var client = new HttpClient();
        client.DefaultRequestHeaders.Add("token", "0dbffc6cbb412c01a90431f07631c0e00f2889d4");
        client.BaseAddress = new Uri("https://api.tiny.com.br/api2/");
        var resp = client.GetAsync("pedidos.pesquisa.php").GetAwaiter().GetResult();

有人能帮助我,使空格消失但让我的逗号完整吗?

它确实删除了空格,但是由于某种原因,它也将逗号(小数点分隔符)转换为句点。如果没有小数,那就没问题。

1 个答案:

答案 0 :(得分:1)

问题:

  • 字符串转换: :Javascript不支持list2[match(DF1$c1, list1)] #[1] 0.6 0.7 0.8 0.6 0.7 0.8 作为十进制分隔符。因此,当您使用getValue()时,它们会自动转换为,。当您.时,它将被转换回setValue()。但是在执行函数期间,您使用,,这使句点.toString()永久不变。

解决方案:

  • 获取为字符串类型: 如果要使用完整的.作为十进制分隔符来获取数字作为字符串,请使用getDisplayValues()。或

  • 设置为数字类型: 将正则表达式替换的字符串转换回数字。在这种情况下,您还应该手动将逗号,转换为句点,,以将其转换回数字类型。

摘要:

.

OR

 r.getDisplayValues();

参考文献:

  • Number
  • Range#getDisplayValues:请注意,它返回v[k][j]=Number(v[k][j].toString().replace(/\s/g, "").replace(/\,/g,".")); ,而String []返回getValues()