Beschreibung
Ich sehe das als ein zweistufiger Prozess. Schritt Eins 12 0
am Anfang jeder Zeile einfügen. In Schritt 2 werden die letzten 12 Zeichen und alle führenden 0
erfasst und durch nur die 12 erfassten Zeichen ersetzt.
Step One - Ersetzen Sie Kommas mit 10 Räumen
^
Ersetzen durch:000000000000
Live Demo:https://regex101.com/r/rM8bK2/1
Beispieltext
801095126710
2227121
19472168
21521070
21945110
25260089
92000077
93400015
132300300
132405100
211304212
934000107
934000108
934000110
934000120
934000144
93400138
160908013840
822100052908
822100053358
Nach Ersatz
000000000000801095126710
0000000000002227121
00000000000019472168
00000000000021521070
00000000000021945110
00000000000025260089
00000000000092000077
00000000000093400015
000000000000132300300
000000000000132405100
000000000000211304212
000000000000934000107
000000000000934000108
000000000000934000110
000000000000934000120
000000000000934000144
00000000000093400138
000000000000160908013840
000000000000822100052908
000000000000822100053358
123456789,123456789,123456789
Hinweis: Ich habe die Nummer Zeile hier eingefügt, um die Anzahl und Position der Zeichen
Zweiten Schritt veranschaulichen - Erfassen 10 Zeichen und alle nachfolgenden Leerzeichen
0*([0-9]{12})$
Ersetzen durch:$1
Live Demo:https://regex101.com/r/aS2xG0/1
Beispieltext
Da dieser Schritt zwei ist, ist der Beispieltext der Ausgabe von Schritt über
000000000000801095126710
0000000000002227121
00000000000019472168
00000000000021521070
00000000000021945110
00000000000025260089
00000000000092000077
00000000000093400015
000000000000132300300
000000000000132405100
000000000000211304212
000000000000934000107
000000000000934000108
000000000000934000110
000000000000934000120
000000000000934000144
00000000000093400138
000000000000160908013840
000000000000822100052908
000000000000822100053358
Nach Ersatz
801095126710
000002227121
000019472168
000021521070
000021945110
000025260089
000092000077
000093400015
000132300300
000132405100
000211304212
000934000107
000934000108
000934000110
000934000120
000934000144
000093400138
160908013840
822100052908
822100053358
123456789,123456789,
Hinweis: Ich habe die Nummer Zeile hier eingefügt, um die Anzahl und Position der Zeichen
Sie wollen zeigen, F. E. ändern 93400138 bis 000000000000 oder 93400138 -> 000093400138? –
Nullen hinzufügen. nicht ersetzen. ja ja 000093400138 –
Wie Thomas Ayoub sagte, ist es nicht wirklich möglich, Mathe mit Regex zu tun. Dies wäre wirklich einfach und leicht mit einem einfachen Skript zu tun, und ich würde vorschlagen, das zu untersuchen, wenn dies ein größeres, wiederkehrendes Problem ist. –