javascript - 查找字符串中的最新日期并返回与该日期关联的特定值

标签 javascript

我有一个包含一系列日期和其他信息的字符串。我想识别字符串中的最新日期并返回与该日期关联的“检查类型”的值。

对于下面的示例,理想的输出是“支票类型:余额”,因为这是字符串中的最新日期。

var myString = "Date: 04/08/2020,
Type of Check: Large,
Investors: ABC

 -- 

Date: 01/22/2021,
Type of Check: Debt,
Investors: ABC

 -- 

Date: 01/01/2022,
Type of Check: Balance,
Investors: ABC"

我已经弄清楚如何使用下面的代码来识别最近的日期,但我不知道如何返回与该日期关联的“支票类型”值。

var dates = myString.match(/(\d{1,4}([.\-/])\d{1,2}([.\-/])\d{1,4})/g);

const descendingDateOrder = dates.sort((a, b) => {
    return new Date(b).getTime() - new Date(a).getTim

最佳答案

您所要做的就是将字符串转换为数组,其中每组数据都是一个单独的成员。由于字符串中有一个“分隔符”,因此这很容易。

const myArray = myString.split("--");

您已经计算出最近的日期 - descendingDateOrder[0]。使用它,您可以过滤数组以获取正确的数据组。

const match = myArray.filter(item => item.includes(descendingDateOrder[0]));

但请记住,如果您在同一日期有多个条目,您将在此处获取所有条目。

现在您已经获得了匹配的数据组(也称为字符串),因为此处的数据是用逗号分隔的,您可以将其拆分为字符串数组,并使用其索引获取所需的文本。

const matchedTypeOfCheck = match[0].split(",")[1].trim();

trim() 方法删除前导和尾随空格。

关于javascript - 查找字符串中的最新日期并返回与该日期关联的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74198968/

相关文章:

javascript - Promises/A+ 实现有何不同?

javascript - 滚动效果 - 修复,滚动时 'blocked' 容器发生变化

javascript - 访问 {{ }} symfony twig 内的 javascript 变量

javascript - Backbone 中的 FileReader 范围问题

javascript - jQuery 中未调用函数

javascript - 从单选按钮获取数据

javascript - 将日期从变量转换为 MM-DD-YYYY

javascript - 如何根据 'dist'文件夹设置相对路径分辨率

php - 使用 javascript 使用单个选择框控制多选框

javascript - 在 Angular6 中创建动态形式