[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

faxinger
Beiträge gesamt: 246

19. Okt 2017, 09:42
Beitrag # 1 von 6
Bewertung:
(2926 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,
ich bitte um eure Hilfe für folgendes Problem:
Es soll mit einem Skript der Dateiname überprüft werden - das ist auch schon gelöst.
Es wird ein bestimmter Buchstabe des Dateinamens abgefragt und je nachdem ov hier ein H oder N steht soll daraufhin etwas passieren.

Aber ich würde auch gern den Fall behandeln wenn der Dateiname ganz anders lautet. Also alle anderen Fälle die weder H noch N im Dateinamen haben.

Hier ist mein bisheriger Code:
Code
var curDoc = app.activeDocument;  
var docName = curDoc.name;
var regex = /\d{1,2}_AT([A-Z])(?=\d)/;

if (docName.match(regex)) {
var treffer = docName.match(regex);
alert(treffer[1]);
};

if ((treffer[1]) ==="H") {
alert("A4");
};

if ((treffer[1])==="N") {
alert("A3");
};

else {alert("weder A3 noch A4");
};


Habt ihr eine Idee?

Vielen Dank
X

Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

Hans Haesler
  
Beiträge gesamt: 5826

19. Okt 2017, 10:14
Beitrag # 2 von 6
Beitrag ID: #560007
Bewertung:
(2917 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo faxinger,

nicht getestet (weil keine konkreten Dokument-Namen vorliegen):

Code
var curDoc = app.activeDocument; 
var docName = curDoc.name;
var regex = /\d{1,2}_AT([A-Z])(?=\d)/;

if (docName.match(regex)) {
var treffer = docName.match(regex);
alert(treffer[1]);
if ((treffer[1])==="H") {
alert("A4");
}
else if ((treffer[1])==="N") {
alert("A3");
}
else {
alert("weder A3 noch A4");
}


Die beiden Tests für "H" und "N" mit 'else' vereinen.
Und keine Strichpunkte nach den geschweiften Klammern.

Gruss, Hans


als Antwort auf: [#560006]

Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

faxinger
Beiträge gesamt: 246

19. Okt 2017, 10:25
Beitrag # 3 von 6
Beitrag ID: #560009
Bewertung:
(2912 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
danke Hans,

aber irgendwo fehlt noch eine geschweifte Klammer...

LG
faxinger


als Antwort auf: [#560007]

Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

faxinger
Beiträge gesamt: 246

19. Okt 2017, 10:33
Beitrag # 4 von 6
Beitrag ID: #560010
Bewertung:
(2909 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat var curDoc = app.activeDocument;
var docName = curDoc.name;
var regex = /\d{1,2}_AT([A-Z])(?=\d)/;

if (docName.match(regex)) {
var treffer = docName.match(regex);
alert(treffer[1]);
if ((treffer[1])==="H") {
alert("A4");
}
else if ((treffer[1])==="N") {
alert("A3");
}
}
else {
alert("weder A3 noch A4");
} ;



als Antwort auf: [#560009]

Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

Hans Haesler
  
Beiträge gesamt: 5826

19. Okt 2017, 11:01
Beitrag # 5 von 6
Beitrag ID: #560012
Bewertung:
(2901 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo faxinger,

stimmt, da fehlte eine geschweifte Klammer.

Man könnte auch prüfen, ob 'match' einen Treffer erzielte. Oder 'null' zurückgibt.
Zudem melden, wenn die Prüfung des Treffers weder "H" noch "N" ist.

Code
var curDoc = app.activeDocument; 
var docName = curDoc.name;
var regex = /\d{1,2}_AT([A-Z])(?=\d)/;

var treffer = docName.match(regex);

if (treffer != null){
alert(treffer[1]);
if ((treffer[1])==="H") {
alert("A4");
}
else if ((treffer[1])==="N") {
alert("A3");
}
else {
alert("weder A3 noch A4");
}
}
else {
alert("kein Treffer");
}

Und wie gesagt: Keine Strichpunkte nach den geschweiften Klammern.

Gruss, Hans


als Antwort auf: [#560010]

Abfrage des Dateinamens und in bestimmten Fall alert ausgeben.

faxinger
Beiträge gesamt: 246

19. Okt 2017, 11:19
Beitrag # 6 von 6
Beitrag ID: #560013
Bewertung:
(2898 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
perfekt danke


als Antwort auf: [#560012]
X