class HL7::MessageParser

Provides basic methods to parse_string, element and item delimeter parser

Attributes

delimiter[R]

Public Class Methods

new(delimiter) click to toggle source
# File lib/message_parser.rb, line 53
def initialize(delimiter)
  @delimiter = delimiter
end
split_by_delimiter(element, delimiter) click to toggle source
# File lib/message_parser.rb, line 49
def self.split_by_delimiter(element, delimiter)
  element.split( delimiter, -1 )
end

Public Instance Methods

parse_element_delim(str) click to toggle source

Get the element delimiter from an MSH segment

# File lib/message_parser.rb, line 67
def parse_element_delim(str)
  (str && str.kind_of?(String)) ? str.slice(3,1) : "|"
end
parse_item_delim(str) click to toggle source

Get the item delimiter from an MSH segment

# File lib/message_parser.rb, line 72
def parse_item_delim(str)
  (str && str.kind_of?(String)) ? str.slice(4,1) : "^"
end
parse_string( instr ) click to toggle source

parse the provided String or Enumerable object into this message

# File lib/message_parser.rb, line 58
def parse_string( instr )
  post_mllp = instr
  if /\x0b((:?.|\r|\n)+)\x1c\r/.match( instr )
    post_mllp = $1 #strip the mllp bytes
  end
  HL7::MessageParser.split_by_delimiter(post_mllp, @delimiter.segment)
end