Javascript 整数上的正则表达式不产生结果

Javascript 整数上的正则表达式不产生结果,javascript,regex,node.js,amazon-dynamodb,Javascript,Regex,Node.js,Amazon Dynamodb,其中eventString={“Timestamp”:1487204364889,“UserEvent”:“Fireworks”} eventType正在生成字符串形式的结果。时间戳是一个整数,而不是 您没有在模式中定义任何捕获组,但尝试访问结果数组中的[1]项。锚也似乎放错了位置 我建议删除锚定并在数字匹配模式周围设置capturng括号: Timestamp = eventString.match(/"Timestamp":(\d+)/)[1]; 请注意,最好先将匹配结果分配给一个变量并检

其中eventString={“Timestamp”:1487204364889,“UserEvent”:“Fireworks”}


eventType正在生成字符串形式的结果。时间戳是一个整数,而不是

您没有在模式中定义任何捕获组,但尝试访问结果数组中的
[1]
项。锚也似乎放错了位置

我建议删除锚定并在数字匹配模式周围设置capturng括号:

Timestamp = eventString.match(/"Timestamp":(\d+)/)[1];

请注意,最好先将匹配结果分配给一个变量并检查它是否为null,然后才访问捕获的值以避免出现问题。

它不应该是
Timestamp=eventString.match(/“Timestamp”:(\d+/)[1]
?您没有在模式中定义任何捕获组,但尝试访问结果数组中的
[1]
项。锚点似乎也放错了位置。为什么要串接对象以获取其属性。您不应该只使用
event.Timestamp
?谢谢@WiktorStribiżew,它工作正常。请创建一个答案,以便我将其标记为已解决。@Iorek您能回答我的问题吗?@ibrahimmahrir,我尝试过这个方法,但由于某些原因无法在AWS lambda中使用。结果我求助于正则表达式。但为什么???他可以在
事件
对象(
事件.时间戳
)中访问它们,对吗?@ibrahimmahrir:这不是问题所在。问题是为什么与
String#match
一起使用的正则表达式没有返回任何匹配项。它不是关于如何访问某个对象中的特定值。当然,如果有一些JSON对象,更适合使用适当的方法等等。请看他的最后一篇!
Timestamp = eventString.match(/"Timestamp":(\d+)/)[1];