Newton Does It!
03.10.2003 |
QuickFigure Works/Pro
|
Funktion/Beispiel | Bedeutung/Ergebnis |
---|---|
Capitalize | den ersten Buchstaben eines Text in Großbuchstaben umwandeln |
Capitalize("hello world") | Hello world |
CapitalizeWords | den ersten Buchstaben jedes Wortes in Großbuchstaben umwandeln |
CapitalizeWords("hello word") | "Hello World" |
UpCase | gesamten Text in Großbuchstaben umwandeln |
UpCase("hello world") | "HELLO WORLD" |
DownCase | gesamten Text in Kleinbuchstaben umwandeln |
DownCase("HELLO WORLD") | "hello world" |
StringToNumber | Text in eine Zahl umwandeln (für Berechnungen) |
StringToNumber("0815") | 815 |
NumberStr | Zahl in einen Text umwandeln |
NumberStr(800+15) | "815" |
StrLen | Länge eines Textes |
StrLen("Hello World") | 11 |
BeginnsWith | Textanfang vergleichen |
BeginnsWith("Hello World";"Hel") | True (boolscher Wert für IF ... THEN ... ELSE) |
EndsWith | Textende vergleichen |
EndsWith("Hello World";"ord") | False (boolscher Wert für IF ... THEN ... ELSE) |
& | zwei Texte verknüpfen |
"Hello" & "World" | "HelloWorld" |
&& | zwei Texte mit Leerzeichen verknüpfen |
"Hello"&&"World" | "Hello World" |
SubStr | Teiltext (Text;Beginn;AnzahlZeichen) |
SubStr("Hello World";2;3) | "llo" |
StrPos | Position einer Zeichenkette im Text finden (text;such;beginn) |
StrPos("Hello World";"or";0) | 7 |
Chr | ASCII Zeichen ausgeben |
Chr(78) | "N" |
Zelle A1 : Name eingeben: Zelle A2 : Zelle A3 : = IF strlen(A2 & "") = 0 THEN "Name fehlt" ELSE "Der Name lautet" & A2
Zelle A1 : Kontostand Zelle A2 : 500 Zelle A3 : = IF A2 <= 0 THEN PLAYSOUND("Sorry, no money left!") ELSE PLAYSOUND(NumberStr(A2))
Wenn man jetzt in A2 einen Wert kleiner gleich Null eingibt, macht QF Works/Pro einen direkt auf die schlechte Finanzlage aufmerksam :-)
für Poker : =buildContext(@830):open() oder für Patience : =buildContext(@831):open()
Innerhalb von QF Works/Pro ist es nur möglich first level Daten in Formeln zu verwenden. So liefert z.B.
Zelle A1 : = GetUserConfig('name)
Leider gibt es aber keinen - mir bekannten - Weg, auch second level Daten, wie z.B. den GMT Offset auszulesen.
Don Vollum von PelicanWare hat dieses "Feature" bestätigt und gleichzeitig versprochen sich dieser Sache anzunehmen, für den Fall, daß es ein Update zu QF Pro 4.0 geben sollte.
Geschachtelten Funktionsaufrufe
QuickFigure hat Probleme beim Umgang mit ineinadergeschachtelten Funktionsaufrufen. Beim Versuch meine Server Logs auszuwerten, stieß ich auf folgendes Problem:
In den Zelle A1 bis A50 befinden sich sie die Abrufzahlen je Seite im Format "number of requests : transferred kb : file name" sortiert nach der Anzahl der Abrufe
Zelle A1 : 123 : 34 : <index.html>
Zelle A2 : 143 : 45 : <irgendwas.html>
usw.
Um diese Liste alphabetisch sortieren zu können, müssen die Strings in der Spalte A in ihre Bestandteile (requests, transferred, name) zerlegt werden.
Separierung des Dateinamens in drei Schritten :
Zelle B1 : "= StrPos(a1;"<";0)" Zelle C1 : "= StrPos(a1;">";0")" Zelle D1 : "= SubStr(a1;b1+1;c1-b1-1)"
Der Versuch jedoch, die Zellen B1, C1 und D1 zusammenzufassen
Zelle B1 : "= SubStr(a1;StrPos(a1;"<";0)+1; StrPos(a1;">";0")-StrPos(a1;"<";0)-1)"
This is probably old news, but I've been getting some Y2K bug reports on some of my software, and lo and behold, stringToDate has what I would describe as a bug (I'm sure if Newton DTS were still around, they would explain to me how this is a feature, it's supposed to be this way, whatever...).
Anyway, here goes:
stringToDate("7/21/99")
#1885A334 102852813
stringToDate("7/21/1999")
#BFB6EB4 50256813
stringToDate("7/21/2099")
#1885A340 102852816
Essentially, it's interpreting any date in mm/dd/yy format as "20yy".
Mehr dazu gibt es direkt bei PelicanWare.
Andree Dettmer 03.10.2003