Method: Zena::Parser::ZazenRules#parse_document_ids

Defined in:
lib/zena/parser/zazen_rules.rb

#parse_document_ids(str) ⇒ Object



406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
# File 'lib/zena/parser/zazen_rules.rb', line 406

def parse_document_ids(str)
  meth = @translate_ids || :zip
  str.split(',').map do |id|
    if id.strip =~ /\A(\d+|#{PSEUDO_ID_REGEXP})/
      if node = find_node_by_pseudo($1)
        # replace shortcut
        node.pseudo_id(@context[:node], meth)
      else
        id  # keep
      end
    else
      id
    end
  end.compact
end