Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel-多次提取某个字符串的某个匹配项_Excel - Fatal编程技术网

Excel-多次提取某个字符串的某个匹配项

Excel-多次提取某个字符串的某个匹配项,excel,Excel,我不知道该如何命名我的问题,但我的问题是: 我在一列中有单元格,每个单元格中都列出了URL(每个单元格的数量不同),并用“|”分隔。例如,A1的内容: www.google.com | www.facebook.com | www.twitter.com | www.stackoverflow.com | www.yahoo.com 我想提取到一个新的列,只是每个单元格的前3个URL。如果更多,它将被忽略,如果更少,它将提取所有可用的 因此,在下面的示例中,B1将包含: www.google.

我不知道该如何命名我的问题,但我的问题是:

我在一列中有单元格,每个单元格中都列出了URL(每个单元格的数量不同),并用“|”分隔。例如,A1的内容:

www.google.com | www.facebook.com | www.twitter.com | www.stackoverflow.com | www.yahoo.com
我想提取到一个新的列,只是每个单元格的前3个URL。如果更多,它将被忽略,如果更少,它将提取所有可用的

因此,在下面的示例中,B1将包含:

www.google.com | www.facebook.com | www.twitter.com
我将如何实现这一目标

=IFERROR(LEFT(A1,FIND(CHAR(1),SUBSTITUTE(A1,"|",CHAR(1),3))-2),A1)
如果字符串中没有三个
|
实例(即列出的网站不超过3个),则
IFERROR()
将起作用。如果是这种情况,那么
A1
中的字符串已经是您想要的字符串,因此我们只需返回该值

如果字符串中没有三个
|
实例(即列出的网站不超过3个),则
IFERROR()
将起作用。如果是这种情况,那么
A1
中的字符串已经是您想要的字符串,因此我们只需返回该值