Strip or add leading zeros
Verified
Added by iNTERFACEWARE
Simple functions to strip or add leading zeros
Source Code
-- following best practice by putting local -- functions first before main() local function addZeros(Id, length) Id = string.rep('0', length-#Id)..Id return Id end local function removeZeros(Id) while true do if Id:sub(1,1) == '0' then Id = Id:sub(2) else break end end return Id end function main() local Id1 = removeZeros('0004589787') local Id2 = addZeros('4589787', 10) trace(Id1) trace(Id2) end
Description
Simple functions to strip or add leading zeros
Usage Details
This code uses two functions removeZeros()
and addZeros()
to strip or add leading zeros from a string.
How to use this code:
- Simply paste the code into any Lua script component
- Play around with it to see how it works, try changing the strings
- See if you can modify it work with numbers
Hint: Try usingtonumber()
andtostring()
or:S()
More Information
Added by iNTERFACEWARE
Demonstrates the use of conn:execute{} to call a stored procedure.
Added by iNTERFACEWARE
Demonstrates how to use conn:merge{} with a table that has an auto-incrementing Id column.
Added by iNTERFACEWARE
This script automatically creates a SQLite database and then generates the tables specified in a VMD.
Added by iNTERFACEWARE
Create a custom ACK by using a script in an LLP Listener component
Added by iNTERFACEWARE
Retries a a custom ACK using the retry.lua module
Added by iNTERFACEWARE
Query a database to identify patient in incoming HL7 messages. If a patient is not found return an ACK with a "Patient does not exist" message.
Added by iNTERFACEWARE
This function formats phone numbers nicely with the area code in brackets.
Added by iNTERFACEWARE
Use smtp.send() to send an email from your Lua code.
Added by iNTERFACEWARE
How to process a batch of HL7 messages by removing the batch header and splitting it into separate messages.
Added by iNTERFACEWARE
Retry an ODBC query to a MySQL DB when an error occurs, can be adapted for retrying LLP etc.
Added by iNTERFACEWARE
Format specified HL7 message fields in a tab delimited string and push the string to the queue for further processing
Added by iNTERFACEWARE
How to normalize X12 delimiters for processing in Iguana scripts, they can be reverted after processing if needed
Added by iNTERFACEWARE
How to format a report as a single NTE or OBX segment with repeating field or using multiple NTE segments, one for each line of the report
Added by iNTERFACEWARE
How to encode binary files as base 64 text, then embed them as OBX-5 segment repeats
Added by iNTERFACEWARE
This function calculates age from DOB, it returns years, months and partial years (i.e., 17, 3, 17.296272).