删除excel中分隔符后的字符串

Delete the string after the delimiter in excel

我有一个简单的问题。我正在分析一些数据并提出了这个问题。

下面是我的值:

www.mysite.come/api/Customer?id=12333&name=jack
www.mysite.come/api/Department?id=52365&name=COP
www.mysite.come/api/Customer?id=13333&name=mathew

等等

我想像这样过滤这些数据

www.mysite.come/api/Customer
 www.mysite.come/api/Department
www.mysite.come/api/Customer

请帮我解决这个问题。

如果只是简单地删除之后的所有内容,包括 ?,那么这样做就可以了:
=LEFT(A:A,FIND("?", A1)-1)

编辑: 如果您想在没有 ? 时捕获 #VALUE! 错误,只需使用 IFERROR:
=IFERROR(LEFT(A:A,FIND("?", A1)-1), A1)

示例行:

www.mysite.come/api/Customer?id=12333&name=jack
www.mysite.come/api/Department?id=52365&name=COP
www.mysite.come/api/Customer?id=13333&name=mathew

输出:

www.mysite.come/api/Customer
www.mysite.come/api/Department
www.mysite.come/api/Customer

我认为您需要结合使用 FINDLEFT

例如(A1 包含您的原始值)

=LEFT(A1, FIND("?", A1) -1)

我不清楚你提到的过滤器的意义,但你可以将你的数据复制到另一列,select 后一列并使用 Find/Replace 查找内容:

~?*  

全部替换

当列不包含“?”时,最好进行处理。为此,请使用 ISERROR() 函数,如下所示:

=LEFT(A2, IF(ISERROR(FIND("?",A2))=TRUE,LEN(A2), (FIND("?",A2)-1)))