Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.

Reply
francoisl
Helper II
Helper II

splitting url data

HI all, 

 

I have seen a lot of answers for similar issue but nothing like I am expecting. 

I have a URL and I need to decipher data from that url. 

 

Here is the search part of a sample of the url. 

 

searchType=Wheels&years=1985&makes=1985_Chevrolet&model=1985_Chevrolet_Camaro&submodel=1985_Chevrolet_Camaro_Berlinetta

 

I want to create one column for the Search Type, one columns for years..... 

 

Is there a way to split this easily like a function that you would pass the url and the argument that would return the value??

ex : geturlvalue (url, 'SearchType') returning 'Wheels'

 

Just a thought.  either in M or Dax. 

 

F

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi @francoisl ,
You can try using following custom function code on 'query edit' side to look up specific text:

let
    LookupValue=(sample as text,search as text) =>
    let
        Source= List.Transform(Text.Split(sample,"&"), each [Key = Text.Split(_,"="){0}, Value = Text.Split(_,"="){1}]),
        Result= List.Transform(List.Select(Source, each Record.Field(_,"Key")=search), each Record.Field(_,"Value")){0}
    in
        Result
in
    LookupValue

Notice: If your result contains multiple results, please remove the bold part {0} to get full search result list.
Regards,
Xiaoxin Sheng

View solution in original post

3 REPLIES 3
Anonymous
Not applicable

Hi @francoisl ,
You can try using following custom function code on 'query edit' side to look up specific text:

let
    LookupValue=(sample as text,search as text) =>
    let
        Source= List.Transform(Text.Split(sample,"&"), each [Key = Text.Split(_,"="){0}, Value = Text.Split(_,"="){1}]),
        Result= List.Transform(List.Select(Source, each Record.Field(_,"Key")=search), each Record.Field(_,"Value")){0}
    in
        Result
in
    LookupValue

Notice: If your result contains multiple results, please remove the bold part {0} to get full search result list.
Regards,
Xiaoxin Sheng

Hi, 

 

Excellent solution, I think you need a different mindset to chop down text like this. 

In fact, both solutions were good but M is better than DAX since I merged data  from different sources. 

 

Many thanks 

 

Francois

mauriciosotero
Resolver III
Resolver III

Hi,

 

Check if this solution for a calculated column (Model example) will help you:

 

Model = 
Var ParameterFind = "model" & "="
Var StartPosition = FIND(ParameterFind,'Table'[URL]) + +LEN(ParameterFind)
Var NumberCharacteres = FIND("&",'Table'[URL],StartPosition,LEN('Table'[URL])+1) - StartPosition

RETURN
MID('Table'[URL], StartPosition, NumberCharacteres)

 

If it helps, pls mark this post as a solution and give a kudo. Thanks

Helpful resources

Announcements
PBIApril_Carousel

Power BI Monthly Update - April 2025

Check out the April 2025 Power BI update to learn about new features.

Notebook Gallery Carousel1

NEW! Community Notebooks Gallery

Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.

April2025 Carousel

Fabric Community Update - April 2025

Find out what's new and trending in the Fabric community.