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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Yqy
Helper I
Helper I

Extract consecutive 8 digit number from column contains text & number

the numbers seperated by the text or delimiter were merged to form the 8 digit number, and i don't want this to happen

DATA                                                what I have what I need

ABC- AB12345-12345678-AB1234567812345678
ABS-12345678-ABV1234567812345678
Abd=IUY=BGTYH-AI789_123456781234567812345678
T12345678-123451234567812345678
Abx-ABC23456789-123456781234567812345678
ABA1234HDSC876512348765 
BGS-123-4567812345678 
bsg-123-123456781234567812345678
BFH-12345678-1231234567812345678
1 REPLY 1
danextian
Super User
Super User

Hi @Yqy ,

 

Please  try the script below. What it does it converts the  text string into  a list, converts the items into a number if can be else null, then filters the list to exclude null, converts the list back into a text string, extracts the first  8 characters only then convert it back to  number.

danextian_0-1678350353382.png

 

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcnRy1lVwdDI0MjYx1QWTZuYWuo5OSrE6IMlgZLEwiGBSiq1naKStk3tIpIeuo6e5hWU8TBFYQQhcC5gB1VQBNMAZKmGpi6LB0ckRxPdwCXa2MDeDaHByB1uti1CVVJwOFkHR6uTmoYtsnVJsLAA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [DATA = _t]),
    #"Added Custom" = Table.AddColumn(Source, "Convert to List", each Text.ToList([DATA])),
    #"Added Custom1" = Table.AddColumn(#"Added Custom", "Get Number", each List.Transform([Convert to List], each try Number.From(_) otherwise null)),
    #"Added Custom2" = Table.AddColumn(#"Added Custom1", "Filter List", each List.Select([Get Number], each _ <> null)),
    #"Extracted Values" = Table.TransformColumns(#"Added Custom2", {"Filter List", each Text.Combine(List.Transform(_, Text.From)), type text}),
    #"Added Custom3" = Table.AddColumn(#"Extracted Values", "First8", each Number.From(Text.Start([Filter List],8)), Int64.Type)
in
    #"Added Custom3"

 





Dane Belarmino | Microsoft MVP | Proud to be a Super User!

Did I answer your question? Mark my post as a solution!


"Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand."
Need Power BI consultation, get in touch with me on LinkedIn or hire me on UpWork.
Learn with me on YouTube @DAXJutsu or follow my page on Facebook @DAXJutsuPBI.

Helpful resources

Announcements
July PBI25 Carousel

Power BI Monthly Update - July 2025

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

Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 community update carousel

Fabric Community Update - June 2025

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