[Gambas-user] help with some simple parsing
Sergio A. Hernandez
info.geex at ...626...
Thu May 7 05:50:02 CEST 2009
Try the following. It is a complete different approach using the XML Writer.
Try it as a console project, just make sure you the gb.xml is selected under
PROJECT\PROPERTIES\COMPONENTS
' Gambas module file
PUBLIC SUB Main()
DIM docXML AS XmlWriter
docXML = NEW XmlWriter
'this line is to save the xml document in your home folder
docXML.Open(User.Home & "/DoctorRicky.html", TRUE)
'This part is the fancy CSS styling only is not important
docXML.StartElement("style", ["type", "text/css"])
docXML.Text("table.fancyTable {padding: 2pt; widht:100%;}")
docXML.Text("th {font-weight: bold; background-color: #cccc99;
color: #000000}")
docXML.Text("tr.evenRow {background-color: #f5f5dc; text-align: center}")
docXML.Text("tr.oddRow {background-color: #ffffff; text-align: center}")
docXML.EndElement
docXML.StartElement("table", ["class", "fancyTable"])
'<th /> is the HTML tab for the headers
docXML.Element("th", "Test")
docXML.Element("th", "Date 1")
docXML.Element("th", "Date 2")
docXML.Element("th", "Date 3")
'<tr /> is the tag for the rows
docXML.StartElement("tr", ["class", "oddRow"])
'<td /> is the tag for the colums
' number of <td /> elements must be the same as the number of <th
/> elements
docXML.Element("td", "LDL Fraction")
docXML.Element("td", "50 ml/dl")
docXML.Element("td", "100 ml/dl")
docXML.Element("td", "150 ml/dl")
docXML.EndElement()
'On the real life you'll prefer to handle this with a Loop Control Structure
docXML.StartElement("tr", ["class", "evenRow"])
docXML.Element("td", "HDL Fraction")
docXML.Element("td", "50 ml/dl")
docXML.Element("td", "75 ml/dl")
docXML.Element("td", "100 ml/dl")
docXML.EndElement()
docXML.EndElement()
'PRINT Xml.EndDocument
END
On Wed, May 6, 2009 at 7:01 AM, richard terry <rterry at ...1946...> wrote:
> See the attached file for the data. Unfortunately I'm brain dead when it comes
> to simple logic.
>
> In one of my hl7 messages in the Free Text segment under an actual pathology
> result, there is a list of sequential bood test results representing previous
> results of the same type - , separated by tabs which I need to display
> properly. as I've re-constructed the result as html, the tabs simply
> disappear in the result, so I've been looking for a solution, and to start I
> thought maybe I could split this up into lines and then later put it into a
> table embedded in the html to keep it aligned.
>
> Perhaps there is a simple way out, but this is what I've done so far.
>
>
> So I started with this:
>
> 1) Split this into lines
>
> Dim bits as string[]
> dim a_line as string
>
> bits = split(the_text_in_the_file,"<BR>,"", TRUE)
>
> for each a_line in bits
> print a_line
> next
>
> Problem with this is that the \t (I presume tab character) gets in the way,
> and it dosn't split properly with the results of the bits[] as shown in the
> picture. Interestingly an occasional letter is lost off the test names.
>
> Any help appreciated.
>
> richard
>
>
>
>
> ------------------------------------------------------------------------------
> The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
> production scanning environment may not be a perfect world - but thanks to
> Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
> Series Scanner you'll get full speed at 300 dpi even with all image
> processing features enabled. http://p.sf.net/sfu/kodak-com
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: MMain.module
Type: application/octet-stream
Size: 1701 bytes
Desc: not available
URL: <http://lists.gambas-basic.org/pipermail/user/attachments/20090506/27009d07/attachment.obj>
More information about the User
mailing list