On 2/16/07, Phil Davis <[EMAIL PROTECTED]> wrote:
Kay C Lan wrote:
> PS Origininally tried to replace the tokens with the efficient:
> put "=, +, -, *, /, [, ], {, }, <, >" into tMyTokens
Your list of tokens contains spaces. Did you try your loop without the
spaces in
there?
Ah, what a different set of eyes can do:-) That was the problem so here is
the amended script:
Script Below
Watch For Line Breaks
43 lines of code, each starting with it's respective line number
--------
1 FUNCTION fFunctionFinder pMyData
2 put 1 into tMyFunctionOpen
3 put 1 into tMyFunctionClose
4 put "closed" into tMyQuotes
5 put the number of characters of pMyData into tMyCharCount
6 REPEAT with tMyChar = 1 to tMyCharCount
7 SWITCH
8 --needs to occur first so that you know when quotes close
9 CASE ((char tMyChar of pMyData = quote) AND (tMyQuotes = "open"))
10 put "closed" into tMyQuotes
11 break
12 --catch for opening quotes
13 CASE ((char tMyChar of pMyData = quote) AND (tMyQuotes = "closed"))
14 put "open" into tMyQuotes
15 break
16 --the following 3 CASE are irrelevant unless outside quotes
17 CASE ((char tMyChar of pMyData = "(") AND (tMyQuotes = "closed"))
18 put (tMySpaceStore + 1) into item 1 of line tMyFunctionOpen of
tMyFunctionStore
19 put tMyChar into item 2 of line tMyFunctionOpen of tMyFunctionStore
20 add 1 to tMyFunctionOpen
21 put tMyChar into tMySpaceStore
22 break
23 CASE ((char tMyChar of pMyData = ")") AND (tMyQuotes = "closed"))
24 put tMyChar into item 3 of line tMyFunctionClose of tMyFunctionStore
25 add 1 to tMyFunctionClose
26 put tMyChar into tMySpaceStore
27 break
28 CASE ((char tMyChar of pMyData = " ") AND (tMyQuotes = "closed"))
29 put tMyChar into tMySpaceStore
30 break
31 END SWITCH
32 END REPEAT
33 REPEAT for each line tMyLine in tMyFunctionStore
34 put char (item 1 of tMyLine) to (item 2 of tMyLine) of pMyData & ")" &
return after tMyFunctionResult
35 END REPEAT
36 --where function names immediately follows a token, such a comma when
used as a function parameter, then the token is included at the front of the
function name. this removes it
37 put "=,+,-,*,/,[,],{,},<,>,." into tMyTokens
38 REPEAT for each item tMyItem in tMyTokens
39 replace tMyItem with empty in tMyFunctionResult
40 END REPEAT
41 replace comma with empty in tMyFunctionResult
42 return tMyFunctionResult
43 END fFunctionFinder
------
Thanks
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution