Don't listen to all the comments about getting the input fixed first. While that's obviously desirable, in the real world we have to work with what we're given, just as Erland noted.
When you have data like this: |101| |A|21|DC|
And you set | as the delimiter, and there are 6 delimiters, then there are 7 columns output. These are the values:
Column 1: blank string
Column 2: 101
Column 3: blank string
Column 4: A
Column 5: 21
Column 6: DC
Column 7: blank string
And you can just select the required output columns in the Source transformation.
I've created a detailed blog post to show you how to do each step. You'll find it here: https://blog.greglow.com/2024/07/19/ssis-reading-pipe-delimited-text-and-selecting-particular-output-columns/