2017-09-12 2 views
-2

Die meisten unserer Dateien in einer einheitlichen Syntax benannt werden:Ziehen Spezielle 10-stellige Zeichenfolge aus dem Dateinamen

B0????????.????.??????.jpg 

jedoch occassionaly wir sehen:

?????.B0????????.????.jpg 

oder

?????????.B0????????.jpg 

Ich brauche ein PowerShell-Skript, um die 'B0' und die nächsten 8 Ziffern zu ziehen. Traditionell haben wir die Zeichenkette gerade abgeschnitten, wenn die Dateinamen einheitlich sind, aber das schlägt bei diesen Variationen fehl.

Hat jemand ein bisschen PS Logik, die 'B0' und die nächsten 8 Ziffern aus einem String/Dateinamen ziehen können?

Danke!

+0

'-replace '* (B0 \ d {8}). *',‚$ 1'' –

+0

@AnsgarWiechers Ich glaube nicht, er sucht die Datei umzubenennen. – TheIncorrigible1

+0

@ TheIncorrigible1, die es nicht umbenennt - Sie ändern nur die Zeichenfolge. – ConnorLSW

Antwort

0
$file = "?????.B0????????.????.jpg" 
$index = ($file).IndexOf("B0") 
$yourCharacters = ($file).Substring($index, 10) 
$file.Replace($yourCharacters, "") 
+0

Dies kann auf '$ File =" ?????. B0 ????????. ????. Jpg "-replace '. * (B0. {8}). *' Verkürzt werden. '$ 1.jpg'' – TheIncorrigible1

Verwandte Themen