gpt4 book ai didi

javascript - 从字符串中解析 Vector3?

转载 作者:太空宇宙 更新时间:2023-11-04 03:14:24 24 4
gpt4 key购买 nike

如果我有一个类似于以下内容的文字字符串:

'(-0.0236, 0.0000, -31.2907)'

将其解析为 3 个 float 的最佳和最快方法是什么,我遇到的问题是,因为 float 可以是任何长度精度,所以我感觉就像一个典型的正则表达式,我还有太多的情况需要考虑正负符号。

最佳答案

这是另一种(有点hacky)的方法:

const SEPARATOR = /[^\d.+-]+/;

function parseFloats(str) {
return str.split(SEPARATOR).filter(Boolean).map(parseFloat);
}

console.info(parseFloats('(-0.0236, 0.0000, -31.2907)'));

不是匹配 float (参见我的 other answer ,我仍然更喜欢它,因为它更容易理解),而是匹配所有不是有效浮点字符并将其用作分隔符。然后将其传递给一个过滤器,该过滤器会删除空字符串,最后单独解析每个结果 float 。

神奇的filter(Boolean)之所以有效,是因为空字符串在转换为 bool 值时计算结果为false。这与执行 filter(str => Boolean(str)) 完全相同。

关于javascript - 从字符串中解析 Vector3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58847017/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com