Thread Array-Lines zählen
(12 answers)
Opened by cohama at 2014-05-06 15:09
Zum Beispiel hab' ich neulich was in Lua geschrieben, um für eine bestehende Anwendung was dazuzuentwickeln. Zu diesem Zweck lieferte die Anwendung den Lua-Interpreter mit, der extrem klein ist, aber nicht Perl oder anderes. Lua hat kein eingebautes split(), ich brauchte das aber, also hab' ich selbst was geschrieben:
Code (lua): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 function split(s, plain_sep) local stringtable = {} local start = 1 local found = string.find(s, plain_sep, start) while found ~= nil do table.insert(stringtable, string.sub(s, start, found - 1)) start = found + string.len(plain_sep) found = string.find(s, plain_sep, start) end if start <= string.len(s) then table.insert(stringtable, string.sub(s, start)) end return stringtable end Meine kleine Funktion unterstützt eben keine RegExes. Es gibt noch andere Ansätze, und manche davon unterstützen es möglicherweise, aber ich hatte nicht die Zeit zu prüfen, ob die Funktionen dort alle richtig arbeiten. Also lieber ohne RegEx. Wenn etwas lokal im Browser laufen soll, schreibe ich auch in JavaScript. Manchmal (für Word) auch in VisualBasic oder (für OpenOffice) in StarBasic. Größere Sachen mit OOP schreibe ich meist in Python (ich hatte einen längeren Konflikt mit mir selbst :), ob ich dafür Perl oder Python verwenden will). Python kennt (leider) keine Schleifen im C-Stil. Man muß da also einen Iterator nehmen: Das entspricht Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 #!/usr/bin/perl use warnings; use strict; my @a = (1, 2, 3); foreach my $i (@a) { print "$i\n"; } An foreach habe ich mich also (notgedrungen) gewöhnt. Insgesamt kommt das alles daher, daß mir keiner verbindliche Vorschriften macht, was ich wie zu schreiben habe (etwa ein Professor oder ein Chef), sondern daß das alles sowieso nur Hobby für mich ist, so daß ich da sehr frei bin und mir höchstens selbst Richtlinien gebe, die aus den Erfahrungen folgen, die ich während des Schreibens in verschiedenen Skript-Sprachen mache. |