【问题标题】:Removing all words that start with same characters in a cell in excel删除excel单元格中所有以相同字符开头的单词
【发布时间】:2020-05-15 19:33:34
【问题描述】:

我在从服务器下载数据时遇到了一些问题。我有许多基因,它们的表达值合并到一个单元格rather than split into multiple columns。一些细胞有大约 30 个左右的基因及其表达值。如果我可以简单地获取基因名称,我可以在服务器上恢复表达式值。所有基因都以“Bn”开头,所以我在下面尝试了删除以某种方式开头的所有单词,但它仅适用于以某种方式开头的大约 2-3 个单词:

Extract several words that start with specific char EXCEL

有谁知道如何提取以某个字符开头的所有单词,以便获得基因名称列表?谢谢你的帮助! :)

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    如果您的数据位于 A1 中并且其中一个具有 TEXTJOIN,那么请尝试:

    =TEXTJOIN("; ",1,FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(A1,";"," ")," ","</s><s>")&"</s></t>","//s[starts-with(.,'Bn')]"))
    

    通过CtrlShiftEnter

    确认


    使用的数据:

    BnaC01g15960D; --; Protein of unknown function6.00Nan2.680.54 3.392.689.392.703.351.26 2.500.596.888.013.69 BnaC02g00590D; --; AT5G0997618.006.831.704.594.934.648.964.034.161.964.701.7611.7710.639.08 BnaA05920890D; CYP707A4; cytochrome P450
    

    【讨论】:

    • 你是怎么得到那个字符串的?你可能没有打出来。 :)
    • 谢谢。我以为你有一些神奇的网站,可以从图片或类似的东西中读取。
    • 如果需要,您可以为不带TEXTJOIN 的版本添加=INDEX(FILTERXML("&lt;t&gt;&lt;s&gt;"&amp;SUBSTITUTE(SUBSTITUTE($A$1,";"," ")," ","&lt;/s&gt;&lt;s&gt;")&amp;"&lt;/s&gt;&lt;/t&gt;","//s[starts-with(.,'Bn')]"),ROW(A2)),该版本从EXCEL 2013 开始有效。拉下来就行了。
    • 是的,我只是假设样本数据下方的其他数据。顺便说一句,需要ROW(A1) =) @OverflowStacker
    • 谢谢,我会试试的。 :) 我想这在 SO 的很多场合都会有所帮助。
    猜你喜欢
    • 2018-07-05
    • 1970-01-01
    • 2014-01-22
    • 2011-03-27
    • 2018-12-22
    • 1970-01-01
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多