Warum meinst Du auch etwas an
strlen(self.sq_other) ändern zu müssen?
"self" wird expandiert in den aktuellen Fragecode. Das ist praktisch, da man bei einer Änderung des Fragencodes nicht auch noch alle diese Terme ändern muss.
Und dann steht im Handbuch
sq_X - where X is a row or column identifier. Only subquestions matching pattern X are selected
Daher das "sq_other". Nur die Teilfrage, deren Code "other" enthält wird in Betracht gezogen.
Mit "sq_SQ001" hättest Du auf die Teilfrage mit dem Code "SQ001" referenziert, mit "sq_SQ01" auf Teilfragen mit Codes wie "SQ010", "SQ011", "SQ012".
Damit kann man sehr fein steuern, welche Teilfragen - gerade in Matrizen(Zahlen) - man berücksichtigen will.
Und ähnlich arbeitet "that"; nur dass dies sich auf eine andere Frage bezieht, die man natürlich angeben muss.
Und natürlich lernt man am besten an Beispielen.
Daher: Mache Dir einige Beispiele, schreibe diese Gleichungen in den Fragetext. Du wirst sehen, wie sich nach Speichern die Ansicht in der GUI ändert.
Und nutze die Beispielstudien
www.limesurvey.org/manual/ExpressionScript_sample_surveys
Lade sie herunter, importiere sie und arbeite sie durch.