Power BI

PowerQuery: nieuwe Regex-engine beschikbaar

Reddit r/PowerBI

Samenvatting

PowerQuery krijgt een Regex-engine in pure M, zonder externe service of JavaScript-truc, met uitvoering via bytecode en een virtuele machine.

PowerQuery krijgt een Regex-engine in pure M

Een ontwikkelaar publiceert een Regex-engine voor PowerQuery/Mashup die volledig in de programmeertaal M is geschreven. De engine heeft geen externe service nodig en gebruikt ook niet de oudere truc met JavaScript-uitvoering.

De oplossing compileert reguliere expressies naar bytecode. Daarna voert een virtuele machine die instructies uit op de aangeleverde tekst. De publicatie bevat voorbeelden voor het testen van een patroon, het teruggeven van een gevonden capture en het opschonen van tekst.

Een voorbeeld controleert of de tekst ABC-123 aan een patroon voldoet. Een ander voorbeeld haalt het nummer uit Order #1042. Daarmee richt de engine zich op herkenning en bewerking van tekst binnen een PowerQuery-transformatie.

Waarom de PowerQuery Regex-engine ertoe doet

Regex-functionaliteit in pure M houdt de verwerking binnen PowerQuery zelf. Een transformatie hoeft voor deze bewerking geen externe dienst aan te spreken en hoeft evenmin terug te vallen op de beschreven JavaScript-methode. Dat maakt de uitvoeringsroute duidelijker voor iemand die bestaande M-code onderhoudt.

De bytecode-aanpak voegt bovendien een afzonderlijke uitvoeringslaag toe: een expressie wordt eerst vertaald en daarna door de virtuele machine verwerkt. De bron beschrijft geen benchmarks of compatibiliteitsmatrix, dus conclusies over snelheid of ondersteuning blijven voorbarig.

Voor BI-teams ligt de praktische waarde vooral bij tekstvelden die tijdens het laden moeten worden gecontroleerd, opgeschoond of uitgesplitst. De engine staat naast bestaande PowerQuery-functies; de publicatie vervangt die functies niet automatisch.

Concrete takeaway voor PowerQuery

Test de Regex-engine eerst met representatieve tekst uit je eigen PowerQuery-stappen. Controleer per patroon of de gewenste match, capture en opschoning correct uitkomen en leg vast waar de pure-M-engine in je bestaande M-code past.

Lees het volledige artikel
Meer over Power BI →