All pastes #187219 Raw Edit

Someone

public text v1 · immutable
#187219 ·published 2006-09-30 22:09 UTC
rendered paste body
on *:TEXT:!jp *:#Admin:{
  ; Check if the db is open, if not open it!
  if (!$sqlite_is_valid_conn(%hiragana_db)) {
    set %hiragana_db $sqlite_open_memory(hiragana.db)
  }

  ; Do the magic
  var %i = 1, %len = $len($2), %jpname
  while (%i <= %len) {
    var %sql = SELECT sym, length(seq) AS len FROM hiragana WHERE seq IN ( $sqlite_qt($mid($2,%i,1)) , $sqlite_qt($mid($2,%i,2)) , $sqlite_qt($mid($2,%i,3)) )
    var %res = $sqlite_query(%hiragana_db, %sql)
    if ($sqlite_fetch_row(%res, hiragana)) {
      %jpname = %jpname $+ $hget(hiragana, sym)
      inc %i $hget(hiragana, len)
    }
    else {
      %jpname = $null
    }
    sqlite_free_res %res
    if (!%jpname) break
  }

  if (%jpname) {
    msg $chan Success: %jpname
  }
  else {
    msg $chan Failure
  }
}