问题标签 [partial-matches]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
78 浏览

google-sheets - 提取所有部分匹配项:聚合公式以在 GOOGLE SHEET 中复制

我需要帮助将以下公式复制到 Google 表格中。由于谷歌表格不支持聚合,我很难将其复制到谷歌表格中。

我需要一个公式,它将根据数据中的特定文本列出所有部分匹配项。

非常感谢您的帮助。

下面是我在excel中使用的公式:

以下是样本数据和结果:

在此处输入图像描述

0 投票
1 回答
33 浏览

regex - 从正则表达式模式中排除最后一个字符

我如何从正则表达式中提取它:

mymatch[ someother char ]

我想要的是mymatch后跟 a[但我不希望匹配中的方括号。

我坚持这一点,但它也得到方括号:

\b.*?\[

更一般地说,我如何从匹配中排除模式的某些部分?

例如,在这里(abc2)mymatch我想要一个正则表达式仅在它之前返回我的匹配项(abc2)

0 投票
3 回答
66 浏览

excel - 字符串中的 Excel 字符串查找

在此处输入图像描述

我有“收货地点”列表,我需要查找另一列,其中包含一组列表,其中包含正确大小写/正确名称的城市名称。

我试过下面的公式,但我没有找到任何运气

=(VLOOKUP(LOOKUP(2^15,SEARCH($I$1:$I$7,A2),$I$1:$I$7),$I$1:$I$7,1,0))

当单元格中的第一个单词与另一个单词匹配时,它会给我结果,但是当“收据地点”在第一个单词之后有不同的单词时,它会抛出错误,

例如,如上图所示,“BRADFORD GB”不会从城市列表中获取“Bradford, WYK”。

0 投票
0 回答
50 浏览

google-sheets - 在列中查找重复项和部分匹配项的方法

在不使用脚本的情况下,我必须使用哪些选项来检测重复/部分匹配?

背景:

  • 我在 A 列中有大量名称(使用 UNIQUE 函数)。
  • 在该列中存在拼写错误的重复名称。

尝试的解决方案

  • 使用 Excel,我可以使用聚合/行/搜索,但这不适用于 Google 表格。

想法(可能有效)

  1. 将检测 A2 中的名称是否包含 75% 或更多在 A3:A 中找到的相同字母的公式。

选项:

  • 如果 75% 或更多,在 B2 中写 TRUE
  • 如果 75% 或更多,条件格式 - 突出显示单元格
  1. 检测 A2 中的前 3 个字母是否与 A3 中的前 3 个字母匹配的公式:A

选项:

  • 如果前 3 个字母匹配,则在 B2 中写入 TRUE
  • 如果前 3 个字母匹配,条件格式 - 突出显示单元格
  • 前 3 个字母中有错字,不会那么准确。

还有其他想法吗?

谢谢!

0 投票
2 回答
184 浏览

python - 在“?”之前具有部分字符串匹配或匹配的子集 pandas df 列 使用名称列表

我希望有人可以帮助我。

我有一个包含具有相似名称的列的数据框(请参阅示例数据)

我有 3 个额外的列名列表,其中包括列的原始名称(即问号之前出现的字符串(请参阅列名列表)

我需要根据匹配 3 个列表中存在的列名的第一部分,将 df 数据帧子集为 3 个单独的数据帧。底部的预期输出。

它必须在列表(或程序化的东西)中,因为我有很多这样的列。我尝试了模式匹配,但因为某些名称非常相似,它们匹配多个列表。

先感谢您!

示例数据

其他 3 个数据框中的列名列表

期望的输出

0 投票
2 回答
31 浏览

awk - awk - 两个文件之间的几列的部分匹配,并返回两个文件的一行,用逗号连接

我有两个文件,每个文件包含以下内容:

/tmp/mydir-1

和第二个文件/tmp/mydir-2

我想在 file2 中匹配,仅包含与第一个文件code2=XXX中匹配的行,并返回由.code=XXX,

这意味着如果在这里,这两个文件之间唯一匹配的行是:

所以要返回:

我是 awk 的新手。我需要做一些事情,但仍然不知道如何将这些事情联系在一起。

我知道这样我可以拆分 code 或 code2 列并在=with 之后打印实际值:

这返回:

现在我正在尝试拆分代码列=并比较两个文件之间的值,这就是我出错的地方。

当我执行这个:

我长高了,线条mydir-2重复了:

所以这就是我被困的地方。我猜我正在以某种方式将第二个文件与自身进行比较?不太确定如何从这里继续。

任何有关此问题的信息将不胜感激。

谢谢

更新

感谢@KamilCuk 的更新。

我更改了变量名称,这是命令:

{}我在@KamilCuk 提到的第二个文件中添加了第二个拆分,当我执行它时结果为空。

变量名和我认为它们的含义:

在 awk 代码与第一个文件相关以及与第二个文件相关的问题上,我是否正确理解了 awk 语法?

0 投票
1 回答
29 浏览

python-3.x - 如何根据熊猫数据框中的部分匹配来隔离重复项

我有一个熊猫数据框,如下所示:

我想检查每个以至少两个“x”开头的电子邮件地址,并检查是否存在没有这些“x”的相同电子邮件地址。

要求的结果:

我能够获得一个包含所有这些行的子数据框,其中电子邮件以 'xx' using 开头df[df['email'].str.contains("xx")],并且还能够在没有 'x' using 的情况下获得电子邮件地址str.lstrip('x'),但似乎都不能帮助我了解是否这封电子邮件出现在没有那些 x 的其他地方。

0 投票
1 回答
19 浏览

match - 如何在不同的工作表中搜索值,可能在文本字符串中

我有需要在另一张表(4 列)中搜索的值,第四列的单元格包含文本字符串。我需要一个能够搜索和计算该值出现在另一张表中的次数的公式,即使是在一串文本中也是如此。最好我希望它找到文本的完全匹配。有时一个单元格会是“abcd”,它会算作“abcd1”。

到目前为止,这只能让我知道值在单元格中单独显示的次数,而不是在文本字符串中显示的次数。我相信某些值也会涉及一些连接。建议?

0 投票
1 回答
54 浏览

r - 通过部分字符串匹配以特定顺序对数据框列进行子集化

我一直试图从一个非常宽格式的数据框中按顺序对列进行子集化。1 行,几千列。列名是重复的,因此当 R 检索和读取时,它们都被标记为“...1/2/3/4/5”

样本数据:

现在您看到列在段中重复,每个段基本上是一个人,他的名字和姓氏,以及他可能的头衔。然后它转到下一个人

我想要的是根据这样的细分对它们进行子集化,这样我就可以旋转表格并清理这个烂摊子。

这是我最初的尝试,它提取了与名字和姓氏匹配的所有列,然后是covered_position。问题是它将所有名字放在一起,然后是姓氏,然后是covered_position。

所以以这种方式,我丢失了段,我想按原始顺序取出 3 列:

然后将 3 列连接在一起,这样我就有了一个字符串,然后我可以将其旋转为长格式并清理它。

谢谢

0 投票
1 回答
19 浏览

r - R:表上缺少数据,通过将部分匹配项引用到“参考”表来完成它

我有两张桌子;“参考”和“表A”。

我正在查看 TableA 这是一个不完整的表,并希望通过引用“参考”表、填充缺失值和/或添加找到多个匹配项的行来将其变成一个“完整”表。

“Reference”和“TableA”的可重现示例如下:

我试图通过执行以下操作来解决此问题:

但是,此解决方案将返回整个 Reference$D,但我只想从 Reference$D 返回那些 A、B、C 列与 TableA 上的内容匹配(或部分匹配)的记录。

例如,在 TableA 的第 1 行中,我想将第 1 行替换为参考表的第 3、4 和 12 行。

预期输出如下。

请注意,参考表组合 1、2、3、1 在预期输出中出现两次,因为它与 TableA 的第 1 行和第 2 行都匹配。

一个 C D
1 2 3 1
2 2 3 1
1 9 3 1
1 2 3 1
5 9 5 2
2 2 3 2
4 4 5 1
1 1 1 1