如果我有一个长字符串
8718584449,19630000,24,990,10218828289,840000,3,18,8914098889,2120000,4,108,8720551129,3690000,18,42
我可以获得
的索引8718584449, 10218828289, 8914098889, 8720551129
通过循环,我将如何获得子字符串
19630000,24,990
840000,3,18
2120000,4,108
3690000,18,42
从那个长字符串?
基本上,对于每 4 个数字,如果我知道该 4 个数字子字符串的第一个数字,如何动态地获取第 2 个、第 3 个和第 4 个数字?例如,如果我没有 10218828289 那么我不想得到 840000,3,18
最佳答案
您可以使用 String.split
, Array.slice
, 和 Array.join
避免使用正则表达式。
var s = '8718584449,19630000,24,990,10218828289,840000,3,18,8914098889,2120000,4,108,8720551129,3690000,18,42';
s.split(',').slice(1, 4).join(','); // => '19630000,24,990'
s.split(',').slice(5, 8).join(','); // => '840000,3,18'
s.split(',').slice(9, 12).join(','); // => '19630000,24,990'
s.split(',').slice(13, 16).join(','); // => '840000,3,18'
如果出于某种原因,你想使用正则表达式:
var s = '8718584449,19630000,24,990,10218828289,840000,3,18,8914098889,2120000,4,108,8720551129,3690000,18,42';
s.match(/\d+,((?:\d+,){2}(?:\d+))/g); // => ['19630000,24,990', …]
关于javascript - 从仅以逗号分隔的字符串中获取子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36019395/