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
This function calculates age from DOB, it returns years, months and partial years (i.e., 17, 3, 17.296272).
Added by iNTERFACEWARE
Demonstrates the use of conn:execute{} to call a stored procedure.
Added by iNTERFACEWARE
Create a custom ACK by using a script in an LLP Listener component
Added by iNTERFACEWARE
This script automatically creates a SQLite database and then generates the tables specified in a VMD.
Added by iNTERFACEWARE
Demonstrates how to use conn:merge{} with a table that has an auto-incrementing Id column.
Added by iNTERFACEWARE
How to dehydrate (serialize) raw JSON data, this can be useful for storing in a databases
Added by iNTERFACEWARE
How to dehydrate (serialize) raw XML data, this can be useful for storing in a databases
Added by iNTERFACEWARE
How to encode binary files as base 64 text, then embed them as OBX-5 segment repeats
Added by iNTERFACEWARE
How to correctly escape a SQL query string
Added by iNTERFACEWARE
How to filter out unwanted HL7 messages (similar principles apply to other message types)
Added by iNTERFACEWARE
This function formats phone numbers nicely with the area code in brackets.
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
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 format an HL7 message without the trailing "|" at the end of each line
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
How to insert data from an HL7 message into a database (similar principles apply to other message types)
Added by iNTERFACEWARE
How to map all or part of an HL7 message (similar principles apply to other message types)
Added by iNTERFACEWARE
Basic example of merging data into a SQLite database (code is "plug and play" as the DB will be created if it does not exist)
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 use transactions and conn:begin{}, conn:execute{} and conn:commit{} to insert data into a database in a specific order.