【发布时间】:2017-11-05 11:02:59
【问题描述】:
我浏览了谷歌,发现了许多类似的问题,但没有一个建议的公式真的对我有用。我正在尝试做一些非常简单的事情:我基本上是在比较两个字符串(即基因)列表(列表 A 和列表 B),并有第三个列表(列表 C)返回从列表 A 到列表 B 的匹配项。匹配项不一定要准确,事实上很多都不是,所以我需要列表 C 来返回从列表 A 到列表 B 具有部分或完全匹配的字符串(例如,列表 A 的“EGF”与列表 B 的“EGFR”匹配, 并在列表 C) 中返回“EGF”。请帮忙,我试过了: if(iserror(search(list A's first string, entire list b),list a's first string, "") 但还是不行。请指教,谢谢!!!!!!!!! !!
例子:
List A = HDGF PKNOX1 AGO1 ZFP64 WRNIP1 ARID4B SIN3A FEZF1 SIX2
List B = WNT5A RGS4 TUBA1A CLDN11 HDGFRP3 MSRB3 AKT3 SIX2
我想将列表 A 的“HDGF”与每个字符串(即“WNT5A”、“RGS4”...等)一一进行比较以找到匹配项(匹配项不必精确)
所以“HDGF”将与“HGDFRP3”匹配,因为它是它的子字符串,因此列表 C 将返回匹配项
List C = HDGF SIX2
希望这会有所帮助!
【问题讨论】:
-
感谢您的回复!列表 A 将是 [HDGF PKNOX1 AGO1 ZFP64 WRNIP1 ARID4B SIN3A FEZF1 列表 b 将是 WNT5A RGS4 TUBA1A CLDN11 HDGFRP3 MSRB3 AKT3 如果我们将它们进行比较,基本上将 a 的第一个字符串“HDGF”与列表 b 中的每个字符串逐个列出,列表 c应该返回“HDGF”,因为“HDGF”是与“HDGFRP3”的子字符串(或不完整)匹配,而其他的应该返回空白,因为它们不匹配任何内容,因此列表 C 将在最后显示“HDGF”。希望这可以帮助!或任何事情请告诉我
-
请编辑您的原始问题,以便以易于阅读的格式显示您的数据。这种附加信息确实不适合评论格式。
-
大家好,非常感谢您的回复。我已经做到了。我希望这更清楚。请告诉我!
-
为了让您了解这一点,为了进行比较,您需要知道确定“匹配”的字符数以及它们是否具有特定位置,例如在开头。例如,如果单个字符可以确定匹配,则 HDGF 与 HPPP 的比较将导致 C 列中的 H。如果不是,则应该有一个最低限度的资格。如果至少有 2 个字符符合条件,那么 HDGF 和 PPHG 或 HDGF 和 PGFP 仍将分别匹配 HG 和 GF,如果没有匹配字符位置的规则。
-
我明白了,在这种情况下,我希望列表 A 中的任何字符串都是与列表 B 相比匹配的完整字符串,例如“EGF”到“EGFR”而不是“EFG”或“EGFRR ",列表 A 的字符串必须是按字母顺序排列的完整子字符串,但与列表 B 中的字符串相比,不必是确切的字符串。我希望我有意义
标签: excel string list compare match