Wie man strings vergleichen in google apps script
Ich versuche zu vergleichen von string-Werten, die ich erhalten haben, aus meiner google-Tabelle.
Meinen Monaten erscheinen in diesem format "Jun13", "Aug13" etc. und mein script hat Probleme die Werte vergleichen, wenn Sie in solche Formate wie
var data = ss.getRange(2,2,ss.getLastRow(),3).getValues();
var ListOfMonths = new Array();
for(var i = 0; i < data.length; ++i){
var row = data[i][0];
var duplicate = false;
for(j in ListOfMonths){
if(row.toString.match(ListOfMonths[j][0])){
duplicate = true;
}
if(!duplicate){
ListOfMonths.push(row);
}
}
}
Könnte jemand mir helfen mit diesem Problem vergleichen von strings? Ich habe auch versucht, = = und ===, aber Sie alle funktionieren nicht
Warum sind Sie verweisen auf ListOfMonths als zwei-dimensionales array?
if(row.toString.match(ListOfMonths[j][0]))
InformationsquelleAutor user3429475 | 2014-03-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
versuchen:
InformationsquelleAutor Harold
Harold ' s code ist effizienter als deins, aber es hat eine andere Logik... wenn Sie interressiert zu wissen, warum dein code hat nicht funktioniert, hier ist eine version, die den gleichen Ansatz wie deins, aber mit ein paar bug-Korrekturen, damit es funktioniert.
Kurz beschrieben, Sie schob die Wert auf eine falsche Stelle in der Schleife und Sie vergaß hinzuzufügen, ein erstes Element mindestens ein element in das zweite array. Sie war nicht entsprechen, der richtige Weg ist, übereinstimmen, gibt die "Allgemeine" Teil des Strings sein, nicht ein boolean.
Hier ist der code :
InformationsquelleAutor Serge insas
Gibt es einen Grund, Sie nicht verwenden können die '= = ' - operator?
InformationsquelleAutor Will Charlton
Nur '= = ' - operator:
Genießen!
InformationsquelleAutor user2503882