<sigh> sending again due to the "email too big" problem. 

> I think the operative word in the original post was "might" as in, "might 
> look like this". I gather that it might also not. Is the question, how do you 
> blindly detect a date format? In that case, you are going to need a function 
> that analyzes a string to determine if any of the data between quotes is a 
> date. 
> 
> I might suggest: (as always watch for line wraps)
> 
> on mouseUp pMouseBtnNo
>     put quote & "Mon, Jan 18 , 2010" & quote & ",9:14 
> AM,130557,4319,Trade,Buy,X,135,8.25,10,-82.5,1417.5,20,10" into myVar
>     set the itemdelimiter to quote
>     repeat for each item theString in myVar
>         if theString is a date then put true -- or whatever else you want to 
> do at this point. 
>     end repeat
> end mouseUp
> 
> Two very obvious problems will immediately present themselves:  First, in the 
> example text given, nothing is a date! Why you ask? Because there is a space 
> in the date after the day number, which is enough to convince Rev that the 
> string is not, in fact, a date. But that may be a typo, and the actual data 
> may correct this anomaly. The second thing is, what if the text has no 
> quotes? 
> 
> All this underscores the fact that you need to understand the nature of the 
> information before you can provide a solution. If it is going to be true CSV, 
> then the dates and all non-numeric data will (or should) be enclosed in 
> quotes.  
> 
> One last caution: When using this form of repeat, remember that you cannot 
> alter the contents of myVar while the loop is running because of the way the 
> repeat command handles the variable. 
> 
> So a revised function that does what you want could look like this: 
> 
> on mouseUp pMouseBtnNo
>     breakpoint
>     put quote & "Mon, Jan 18, 2010" & quote & ",9:14 
> AM,130557,4319,Trade,Buy,X,135,8.25,10,-82.5,1417.5,20,10" into myVar
>     set the itemdelimiter to quote
>     put myVar into tempVar
>     repeat for each item theString in myVar
>         if theString is a date then
>             put the length of theString into theStrLength
>             put offset(theString, tempVar) into charStart
>             put charStart + theStrLength into charEnd
>             replace comma with "*&*" in char charStart to charEnd of tempVar
>         end if
>     end repeat
>     replace comma with return in tempVar
>     replace "*&*" with comma in tempVar
>     put tempVar into myVar
> end mouseUp
> 
> resulting in data that looks like this:
> 
> "Mon, Jan 18, 2010"
> 9:14 AM
> 130557
> 4319
> Trade
> Buy
> X
> 135
> 8.25
> 10
> -82.5
> 1417.5
> 20
> 10
> 
> Bob
> 
> 
> On Mar 8, 2010, at 9:44 AM, Gregory Lypny wrote:
> 
>> Hello everyone,
>> 
>> I'm creating an app that imports comma-delimited tables.  A few lines might 
>> look like this, where there are 14 items per line.
>> 
>> "Mon, Jan 18 , 2010",9:14 
>> AM,130557,4319,Trade,Buy,X,135,8.25,10,-82.5,1417.5,20,10
>> "Mon, Jan 18 , 2010",9:14 AM,130558,4371,Accept,Your 
>> ASK,X,135,8.25,10,82.5,1582.5,0,10
>> 
>> My problem is that Rev treats each date in quotes as three items rather than 
>> one.  I convert the comma delimiters to tab by setting the itemDelimiter to 
>> comma and then running the lines through nested repeat-for-each loops as
>> 
>> repeat for each line thisLine in dataTable
>> repeat for each item thisItem in thisLine
>> put thisItem & tab after newLine
>> end repeat
>> -- more stuff here
>> end repeat
>> 
>> I end up with
>> 
>> "Mon (as the first item)
>> Jan 18       (as the second)
>> 2010"        (as the third)
>> 
>> Any suggestions as how I might get the date treated as one item?
>> 
>> Regards,
>> 
>>      Gregory
>> _______________________________________________
>> use-revolution mailing list
>> use-revolution@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-revolution
> 
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to