gpt4 book ai didi

javascript - 如何从 javascript 中的 API 字符串确定多个不同大小的子字符串

转载 作者:行者123 更新时间:2023-11-30 14:23:51 24 4
gpt4 key购买 nike

我有一个 API 调用,作为对象的一部分返回如下内容:

"aaps":"1.50U\/h 0.36U(0.18|0.18) -1.07 0g"

我想从中提取两个子字符串,但子字符串的大小会有所不同。例如,我希望一个变量是第二个“U”之前的数字的子串。但此值介于 0.00 和 100.99 之间。所以我不能指望使用 indexof()

我还希望另一个变量是“g”之前的数字的子字符串。此变量的值介于 0 和 250 之间,因此子字符串的字符数会有所不同。

最佳答案

JavaScript 的 exec功能非常适合这个。

var string = '1.50U\/h 0.36U(0.18|0.18) -1.07 0g';
var regex = /.+U.+(\d+\.\d{2})U.+(\d+)g/;
var match = regex.exec(string);
if (match) {
console.log('Matches: ' + match[1] + ', ' + match[2]);
// Matches: 0.36, 0
}

正则表达式捕获您需要的两个数字,exec 函数将它们提取到一个数组中。以下是正则表达式的含义:

.+                         | Match one or more consecutive characters (any)
U | Match the letter "U"
.+ | Match one or more consecutive characters (any)
( | Capture the following:
\d+ | One or more consecutive digits
\. | The character "."
\d{2} | Exactly 2 consecutive digits
) | End capture
U | Match the letter "U"
.+ | Match one or more consecutive characters (any)
(\d+) | Capture one or more consecutive digits
g | Match the letter "g"

关于javascript - 如何从 javascript 中的 API 字符串确定多个不同大小的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52263680/

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