小编Tra*_*vis的帖子

有没有更好的方法从字符串中提取信息?

假设我有一个字符串数组,我需要来自它们的具体信息,这将是一种简单的方法吗?

假设数组是这样的:

let infoArr = [
  "1 Ben Howard 12/16/1988 apple",
  "2 James Smith 1/10/1999 orange",
  "3 Andy Bloss 10/25/1956 apple",
  "4 Carrie Walters 8/20/1975 peach",
  "5 Doug Jones 11/10/1975 peach"
];
Run Code Online (Sandbox Code Playgroud)

假设我想提取日期并将其保存到另一个数组中,我可以创建这样的函数

function extractDates(arr)
{
  let dateRegex = /(\d{1,2}\/){2}\d{4}/g, dates = "";
  let dateArr = [];

  for(let i = 0; i<arr.length; i++)
  {
    dates = /(\d{1,2}\/){2}\d{4}/g.exec(arr[i])
    dates.pop();
    dateArr.push(dates);
  }

  return dateArr.flat();
}
Run Code Online (Sandbox Code Playgroud)

虽然这很有效,但它很笨重并且需要,pop()因为它将返回一个数组数组,即:["12/16/1988", "16/"],而且我需要flat()事后调用.

另一种选择是使用给定位置对字符串进行子串,我需要知道正则表达式.

function extractDates2(arr)
{
  let dates = [];

  for(let …
Run Code Online (Sandbox Code Playgroud)

javascript regex arrays

18
推荐指数
2
解决办法
1505
查看次数

你如何操纵范围函数的第三个参数上升n的因子?

Python的for循环接受for循环范围内的三个参数.我怎么能操纵第三个参数成为一个因素?

factor_of = 2
li = []
for i in range(first_value, 25000, factor_of):
    li.append(i)
Run Code Online (Sandbox Code Playgroud)

现在我意识到每次都会增加2,但是如何将它变为第一个值factor_of每次乘以的位置并存储在i值中?

期望的影响是(假设first_value设置为10)

[10, 20, 40, 80, 160, ...]
Run Code Online (Sandbox Code Playgroud)

是的,我知道这在while循环中更有意义.

python python-3.x

2
推荐指数
1
解决办法
421
查看次数

标签 统计

arrays ×1

javascript ×1

python ×1

python-3.x ×1

regex ×1