Re: Having problem with SPLIT
Available news archives: comp.lang.tcl - comp.lang.python - comp.security.firewalls - sci.crypt - comp.lang.php - comp.lang.javascript
Google
 
Web news.hping.org


comp.lang.tcl archive

Re: Having problem with SPLIT

From: miguel sofer <msofer@users.sf.net>
Date: Thu Jun 30 2005 - 01:57:30 CEST

Earl Grieda wrote:
> "Bryan Oakley" <oakley@bardo.clearlight.com> wrote in message
> news:MFFwe.969$Ox3.533@newssvr12.news.prodigy.com...
>
>>Earl Grieda wrote:
>>
>>>I am trying to embed a tab character into a line that gets emailed
>>>to a report generator. Upon receipt of the email, I go through each
>>>line of it with split since in the past emails have arrived with
>>>unbalanced braces which then caused problems.
>>>
>>>The line I send is, \tHeader with a tab. After the split I get,
>>>{\tHeader} with a tab. Another line sent without a tab, Header Without
>>>a tab, is unaffected. What I want is the final line that gets passed to
>>>"puts $reportFile" to be "\tHeader with a tab", but I cannot get rid of
>>>the curly braces. I know this is my problem but I have run out of
>
> ideas.
>
>>>Thanks.
>>>
>>>
>>
>>split returns a list, so maybe you need to do "puts [lindex
>>$resultOfSplit 0]" to get your header? It's hard to say without seeing
>>your actual code. Textual descriptions of code rarely describe the
>>problem accurately.
>>
>
>
> Code:
>
> if {$::DEBUG} {puts "FIRST0: $orgLine"}
> set line [split $orgLine]
> if {$::DEBUG} {puts "FIRST1: $line"}
>
> DEBUG output:
>
> FIRST0: \tHeader with a tab
> FIRST1: {\tHeader} with a tab

What you have here is that, after the split, $line is a 4 element list.
Maybe the following is illuminating:

   % set orgLine {\tHeader with a tab}
   \tHeader with a tab
   % set line [split $orgLine]
   {\tHeader} with a tab
   % lindex $line 0
   \tHeader
   % llength $line
   4
   % puts $line
   {\tHeader} with a tab
   % foreach elem $line {puts $elem}
   \tHeader
   with
   a
   tab

The curlies not part of element 0, they are part of the string
representation of the complete list.

I'm not sure I understand 100% what you want to do. One possibility is
that you're after
   % puts $orgLine
   \tHeader with a tab
Another one is
   % puts [join $line]
   \tHeader with a tab

HTH
Miguel
Received on Thu Sep 29 14:23:55 2005