Hi @CHINH_TRANTAN
Here is a solution:
The Flow:
Enclose the Activities (in Highlighted Area) inside a For Each File in Folder
The Assign Statement:
You Must change the Regex pattern string in case any of them don’t work.
row Array = New Object() {System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Program : ).{4}").Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Temperature)\s+(.+)\n\s+(.+)\n(?=Washing)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Temperature)\s+(.+)\n\s+(.+)\n(?=Washing)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Washing while heating)\s+(.*)(?=\n)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Insert Flask\/Ingot)\s+(.*)(?=\n)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Flask temperature)\s+(.*)(?=\n)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Melting pressure)\s+(.+)\n\s+(.+)(?=\nMelting time)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Temperature)\s+(.+)\n\s+(.+)\n(?=Washing)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Melting time)\s+(.+)\n\s+(.+)(?=\nCasting)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Melting time)\s+(.+)\n\s+(.+)(?=\nCasting)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Casting mould)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Casting mode)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Pre cast vacuum)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Casting pressure start)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Casting pressure)\s+(.+)\n\s+(.+)\n(?=Flask pressure)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Casting pressure)\s+(.+)\n\s+(.+)\n(?=Flask pressure)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Flask pressure)\s+(.+)\n\s+(.+)\n(?=Vibration time)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Flask pressure)\s+(.+)\n\s+(.+)\n(?=Vibration time)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Vibration time)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Vibration sweep)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Cooling time)\s+(.+)\n\s+(.+)\n(?=Cooling time p)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Cooling time)\s+(.+)\n\s+(.+)\n(?=Cooling time p)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Cooling time p.-less)\s+(.+)\n\s+(.+)\n(?=Vacuum)").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Cooling time p.-less)\s+(.+)\n\s+(.+)\n(?=Vacuum)").Groups(2).Value.Replace("(", "").Replace(")", "").Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Vacuum chamber open)\s+(.+)\n").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Current values within brackets.)\s*\n-*\s*\n(.{6})\s+(.{8})\s+(.{5})\s+(.{6})").Groups(1).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Current values within brackets.)\s*\n-*\s*\n(.{6})\s+(.{8})\s+(.{5})\s+(.{6})").Groups(2).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Current values within brackets.)\s*\n-*\s*\n(.{6})\s+(.{8})\s+(.{5})\s+(.{6})").Groups(3).Value.Trim, _
System.Text.RegularExpressions.Regex.Match(inputString, "(?<=Current values within brackets.)\s*\n-*\s*\n(.{6})\s+(.{8})\s+(.{5})\s+(.{6})").Groups(4).Value.Trim _
}
The Output:
Note: I have ignored the duplicate column names present in the excel. I have manually fixed them. You can implement a Excel scope - Write Range and build a logic to Insert the Row Array
If this solves your issue, Do mark it as a solution.
Happy Automation 