Pentaho Spoon:JavaScript split 只是将一个元素放入数组中
Pentaho Spoon: JavaScript split is only putting one element in array
我在 Pentaho Spoon 中有以下格式的字符串:
"0.31;0.45"
现在我想把它们分成 Javascript
var str = "0.31;0.45"
var res1 = str.split(";");
然而,这个returns一个数组,其中只有第一个元素被填充为
res1[0] = "0.310.45"
虽然我很期待这个:
res1[0] = "0.31"
res1[1] = "0.45"
我做错了什么?我一直在寻找很长一段时间,但没有发现任何解决方案。
字符串之前已经过清理,因为它是从 excel sheet 导入的,其中在不同值之间添加了输入:
str = strold.replace(new RegExp("\n", "gi"), ";");
excelsheet数据的片段可以在这里找到(由于数据的敏感性,不能透露完整的记录):
任何正确轨道上的指针将不胜感激:)
谢谢!
罗布
如果您想在修改后的 JavaScript 步骤中执行此操作,这应该是正确的:
在 Excel- 输入值为“0.31;0.45”(作为字符串)的字段 test1
之后,您的 JS 代码应如下所示:
var str = test1;
var split = str.split(";");
var res1 = split[0];
var res2 = split[1];
新字段 res1
和 res2
现在显示拆分后的值。我认为你的问题是这里缺少第二个变量,比如我上面的代码中的 split
,也许是特定于水壶的东西......
作为无需 JavaScript 步解决此问题的第二种可能方法,请使用 Split-Fields
步:
Excel 输入后设置步骤 Split-Fields
。这里将字段设置为拆分(在我的测试场景test1
),设置分隔符(;
)并定义两个新字段。
希望有用!
我在 Pentaho Spoon 中有以下格式的字符串:
"0.31;0.45"
现在我想把它们分成 Javascript
var str = "0.31;0.45"
var res1 = str.split(";");
然而,这个returns一个数组,其中只有第一个元素被填充为
res1[0] = "0.310.45"
虽然我很期待这个:
res1[0] = "0.31"
res1[1] = "0.45"
我做错了什么?我一直在寻找很长一段时间,但没有发现任何解决方案。
字符串之前已经过清理,因为它是从 excel sheet 导入的,其中在不同值之间添加了输入:
str = strold.replace(new RegExp("\n", "gi"), ";");
excelsheet数据的片段可以在这里找到(由于数据的敏感性,不能透露完整的记录):
任何正确轨道上的指针将不胜感激:)
谢谢!
罗布
如果您想在修改后的 JavaScript 步骤中执行此操作,这应该是正确的:
在 Excel- 输入值为“0.31;0.45”(作为字符串)的字段 test1
之后,您的 JS 代码应如下所示:
var str = test1;
var split = str.split(";");
var res1 = split[0];
var res2 = split[1];
新字段 res1
和 res2
现在显示拆分后的值。我认为你的问题是这里缺少第二个变量,比如我上面的代码中的 split
,也许是特定于水壶的东西......
作为无需 JavaScript 步解决此问题的第二种可能方法,请使用 Split-Fields
步:
Excel 输入后设置步骤 Split-Fields
。这里将字段设置为拆分(在我的测试场景test1
),设置分隔符(;
)并定义两个新字段。
希望有用!