mineralwasser
Goto Top

RegEx für Dateinamen in SharePoint

Hallo Leute

Ich bin nicht sehr gut mit RegEx würde es jedoch gerne darüber lösen. Und zwar unterstützt SharePoint viele Sonderzeichen nicht, die das FileSystem jedoch unterstützen. Nun die Bedingungen die erfüllt werden müssen habe ich aus der http://support.microsoft.com/kb/905231 herausgefunden und habe versucht den Regex dazu, zu erstellen. Leider funktioniert er nicht ganz und ich weiss nicht wie ihn zusammenzufügen soll. Wäre über eine Hilfe sehr dankbar.

Folgendes habe ich schon zusammengestellt:

Keine Endung mit:
files _files -Dateien _fichiers _bestanden _Datei _archivos -Filer _tiedostot _pliki _soubory _elemei _ficheiros _arquivos _dosyalar _datoteke _fitxers _failid _fails _bylos _fajlovi _fitxategiak

(.files|_files|-Dateien|_fichiers|_bestanden|_Datei|_archivos|-Filer|_tiedostot|_pliki|_soubory|_elemei|_ficheiros|_arquivos|_dosyalar|_datoteke|_fitxers|_failid|_fails|_bylos|_fajlovi|_fitxategiak)*$

Sie können keinen Dateinamen mit dem Punkt starten:
^.

Sie können keinen Dateinamen mit dem Punkt enden:
.$

Punktzeichen nacheinander in der Mitte ein Dateiname kann nicht verwendet werden.
Keine Ahnung wie man das verhindert

Sie können nicht die folgenden Zeichen an einer beliebigen Stelle in einem Dateinamen verwenden:
˜#%&*{}/\?:|"⟨⟩
(\˜*\#*%*&*\*\{*\}*\/*\\*\?*\:*\|*\"*\⟨*\⟩*)

Ist dieses Vorgehen richtig oder sollte ich eher mit einem negativen Vergleich vorgehen, um auch ganz sicher zu sein, dass nicht noch irgendwelche Sonderzeichen durchkommen:
[^a-zA-Z0-9 _-]

Vielen Dank

Content-ID: 210879

Url: https://administrator.de/contentid/210879

Ausgedruckt am: 25.11.2024 um 00:11 Uhr

colinardo
colinardo 08.07.2013 um 20:00:37 Uhr
Goto Top
Hallo Mineralwasser (hatte ich heut' schon 2 Liter face-wink),
für dein Vorhaben sollte das folgende RegEx funktionieren:
^\.|[\x00-\x1F,\x7B-\x9F,"",#,%,&,*,/,:,<,>,?,\\]+|(\.\.)+|\.$|\.files$|_files$|-Dateien$|_fichiers$|_bestanden$|_Datei$|_archivos$|-Filer$|_tiedostot$|_pliki$|_soubory$|_elemei$|_ficheiros$|_arquivos$|_dosyalar$|_datoteke$|_fitxers$|_failid$|_fails$|_bylos$|_fajlovi$|_fitxategiak$
In Verbindung mit der Replace-Funktion des RegEx-Objects könntest du diese Illegalen Zeichenfolgen ersetzen wie in diesem Beispiel: http://geek.hubkey.com/2008/11/get-valid-sharepoint-file-or-folder.html

Grüße Uwe
gelöste Beitrage bitte auch als solche markieren.Danke
Mineralwasser
Mineralwasser 15.07.2013 um 10:26:12 Uhr
Goto Top
Super, vielen Dank. Ich werde das gleich ausprobieren.