Använda Power Query Advanced Editor för att extrahera värden före en specifik text

För den här handledningen kommer jag att demonstrera hur du kan extrahera värden före varje förekomst av en specifik text med hjälp av Power Query Advanced Editor. Det finns många sätt att uppnå detta, men jag tänkte att det skulle vara kul att visa en lösning som är helt kodad. Du kan se hela videon av denna handledning i slutet av den här bloggen.

En medlem påpublicerade detta scenario nedan. Den helt kodade lösningen som jag ska visa är mer avancerad, men jag delar upp den i mycket små bitar så att vi kan undersöka resultaten av varje enskilt steg.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Innehållsförteckning

Använda Power Query Advanced Editor & M-funktioner

Jag skapar en referens till exempelfrågan och lägger till en anpassad kolumn där vi kan bygga vår logik.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Det första jag ska göra är att dela upp textkolumnen. Så vi använder funktionen Text.Split och placerar sedan en öppningsparentes. Den vill ha en text, så vi kan peka på vår textkolumn. Därefter vill den ha en separator som text. Så mellan en uppsättning dubbla citattecken kan vi lägga till det semikolonet, sedan stänga parentesen och trycka på OK.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Och med det ger det oss en lista med separerade textvärden.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Vi måste fortfarande göra lite av en städning eftersom det kan finnas några inledande eller efterföljande utrymmen inkluderade i dessa textsträngar och vi måste bli av med dem. Det betyder att vi måste ändra innehållet i var och en av dessa listor, och det finns enför det som kallas List.Transform .

Så i formelfältet lägger jag till List.Transform. Den vill ha en lista och vi har gett det, sätt sedan ett kommatecken. Nästa, är en transformation, så vi vill trimma dessa texter. Så jag lägger till Text.Trim , sedan en avslutande parentes och trycker på OK.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Nu, låt oss öppna Power Query Advanced Editor-fönstret för som jag sa, jag vill dela upp detta i riktigt små bitar. Jag kommer att använda variabler för att lagra mellanliggande resultat för vart och ett av stegen.

Vi kan skapa en kommaavgränsad uppsättning variabler i ett let- uttryck. Jag kallar det första steget som ListTexts . Den sista avslutande parentesen är från vår tabell som lade till kolumnfunktioner, så flytta den till en ny rad också. I slutet av det första uttrycket måste vi sätta i ett kommatecken, så att vi kan lägga till ett nytt uttryck där.

Sedan skapar vi ett nytt variabelnamn, som jag kallar FindPositions . Hela strängen har separerats och rengjorts. Allt vi behöver göra är att hitta platsen för strängen som vi letar efter. För att göra det använder vi en funktion som heter ListPositionOf . Lägg till öppningsparentes så kan vi returnera variabeln som vi redan skapat (ListTexts).

Därefter sätter vi värdet som vi letar efter, och det är två stora A. Motsvarigheten till let är i klausulen, så vi måste lägga till det och returnera det till FindPositions . Tryck sedan på Klar.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Den här funktionen tar en valfri tredje parameter, så i formelfältet kan vi lägga till den tredje parametern. Och med det får vi en lista.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Målet är att extrahera värdet före söksträngen, så vi måste flytta tillbaka till en enda position. Men vi har också nollor. Det finns inget värde före det första initiala värdet i den strängen, och vi måste undvika fel, så vi måste utesluta dessa nollor, så vi går tillbaka till Advanced Editor igen och lägger till lite logik.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Vi behöver fortfarande flytta tillbaka till en position. Så i Advanced Editor kan vi använda List.Transform för att hjälpa oss.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Därefter använder vi List.Transform för att hämta strängar och komma åt objekt i våra listor.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Det sista steget är att kombinera alla textvärden i listan till en enda sträng. Och så, jag ska lägga till ytterligare en rad i vår logik för vårt resultat med funktionen Text.Combine .

Använda Power Query Advanced Editor för att extrahera värden före en specifik text

Och det är så du kan extrahera strängar före en specifik text med en helt kodad lösning.

Använda Power Query Advanced Editor för att extrahera värden före en specifik text




Slutsats

I den här handledningen har du sett hur man extraherar strängar före en specifik text, och vi använde flera texter och listar M-funktioner för att utföra den uppgiften. Jag hoppas att du har njutit av den här. Du kan titta på hela videohandledningen nedan för att se steg-för-steg-lösningen i detalj.

Med vänliga hälsningar!

Melissa


Skapa en datumtabell i LuckyTemplates

Skapa en datumtabell i LuckyTemplates

Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.

LuckyTemplates mobilrapporteringstips och tekniker

LuckyTemplates mobilrapporteringstips och tekniker

Denna korta handledning belyser LuckyTemplates mobilrapporteringsfunktion. Jag ska visa dig hur du kan utveckla rapporter effektivt för mobila enheter.

Professional Service Analytics-rapporter i LuckyTemplates

Professional Service Analytics-rapporter i LuckyTemplates

I denna LuckyTemplates Showcase går vi igenom rapporter som visar professionell serviceanalys från ett företag som har flera kontrakt och kundengagemang.

Microsoft Power Platform-uppdateringar | Microsoft Ignite 2021

Microsoft Power Platform-uppdateringar | Microsoft Ignite 2021

Gå igenom de viktigaste uppdateringarna för Power Apps och Power Automate och deras fördelar och konsekvenser för Microsoft Power Platform.

Vanliga SQL-funktioner: En översikt

Vanliga SQL-funktioner: En översikt

Upptäck några vanliga SQL-funktioner som vi kan använda som sträng, datum och några avancerade funktioner för att bearbeta eller manipulera data.

LuckyTemplates Skapa mall: Guide och tips

LuckyTemplates Skapa mall: Guide och tips

I den här handledningen kommer du att lära dig hur du skapar din perfekta LuckyTemplates-mall som är konfigurerad efter dina behov och preferenser.

Fältparametrar och små multiplar i LuckyTemplates

Fältparametrar och små multiplar i LuckyTemplates

I den här bloggen kommer vi att visa hur man lager fältparametrar med små multiplar för att skapa otroligt användbara insikter och bilder.

LuckyTemplates Rank och anpassad gruppering

LuckyTemplates Rank och anpassad gruppering

I den här bloggen kommer du att lära dig hur du använder LuckyTemplates ranknings- och anpassade grupperingsfunktioner för att segmentera en exempeldata och rangordna den enligt kriterier.

Visar kumulativ total endast upp till ett visst datum i LuckyTemplates

Visar kumulativ total endast upp till ett visst datum i LuckyTemplates

I den här handledningen kommer jag att täcka en specifik teknik kring hur man visar Kumulativ total endast upp till ett specifikt datum i dina bilder i LuckyTemplates.

Punktdiagram: Avancerade anpassade bilder för LuckyTemplates

Punktdiagram: Avancerade anpassade bilder för LuckyTemplates

Lär dig hur du skapar och anpassar punktdiagram i LuckyTemplates, som huvudsakligen används för att mäta prestanda mot mål eller tidigare år.