在 Excel 中提取 URL 查询值
Extract URL Query Value in Excel
我正在使用 Excel 从 URL 中提取查询值 q=
。我面临的主要挑战是查询值并不总是在同一位置。我可以在查询值之前或之后有多个参数。我所知道的是,我需要从 &q=
位置开始,并在下一个 &
符号处结束,如果没有其他 &
跟随,则在行尾结束。
例如:在下面的 URL 中,我要提取查询值:This_Is_My_Query_value
http://www.example.com/somepage?param1=one¶m2=two¶m3=three`&q=This_Is_My_Query_value`&A=Z&B=y&C=ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
查询字符串拆分器:
'param1':
一个
'param2':
两个
'param3':
三个
'q':
This_Is_My_Query_value
'A':
Z
'B':
y
'C':
ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
您可以分两个阶段执行此操作:
A1 (Your URL)
http://www.example.com/somepage?param1=one¶m2=two¶m3=three&q=This_Is_My_Query_value&A=Z&B=y&C=ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
B1 =MID(@A:A,FIND("q=",@A:A)+2,999)
This_Is_My_Query_value&A=Z&B=y&C=ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
C1 =LEFT(@B:B,IFERROR(FIND("&",@B:B)-1,999))
This_Is_My_Query_value
或者您可以在一个公式中完成:
=LEFT(MID(@A:A,FIND("q=",@A:A)+2,999),IFERROR(FIND("&",MID(@A:A,FIND("q=",@A:A)+2,999))-1,999))
将 @A:A
替换为对 URL 单元格的引用。
如果 URL 之前还有另一个 q=
,这将不起作用 - 如果这是一个问题,可以寻找 ?q=
或 &q=
而不是 q=
.
我正在使用 Excel 从 URL 中提取查询值 q=
。我面临的主要挑战是查询值并不总是在同一位置。我可以在查询值之前或之后有多个参数。我所知道的是,我需要从 &q=
位置开始,并在下一个 &
符号处结束,如果没有其他 &
跟随,则在行尾结束。
例如:在下面的 URL 中,我要提取查询值:This_Is_My_Query_value
http://www.example.com/somepage?param1=one¶m2=two¶m3=three`&q=This_Is_My_Query_value`&A=Z&B=y&C=ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
查询字符串拆分器:
'param1':
一个'param2':
两个'param3':
三个'q':
This_Is_My_Query_value'A':
Z'B':
y'C':
ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
您可以分两个阶段执行此操作:
A1 (Your URL)
http://www.example.com/somepage?param1=one¶m2=two¶m3=three&q=This_Is_My_Query_value&A=Z&B=y&C=ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
B1 =MID(@A:A,FIND("q=",@A:A)+2,999)
This_Is_My_Query_value&A=Z&B=y&C=ahUKEwjS09bhyPD1AhVihOAKHTQyBeEQwL
C1 =LEFT(@B:B,IFERROR(FIND("&",@B:B)-1,999))
This_Is_My_Query_value
或者您可以在一个公式中完成:
=LEFT(MID(@A:A,FIND("q=",@A:A)+2,999),IFERROR(FIND("&",MID(@A:A,FIND("q=",@A:A)+2,999))-1,999))
将 @A:A
替换为对 URL 单元格的引用。
如果 URL 之前还有另一个 q=
,这将不起作用 - 如果这是一个问题,可以寻找 ?q=
或 &q=
而不是 q=
.