Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > d0129efeddc18e80df78fb93bad9958d > files > 14

ocaml-pcre-devel-6.0.1-5mdv2010.0.i586.rpm

open Pcre

let read_whole_channel ch =
  let size = 4096 in
  let strbuf = String.create size
  and buf = Buffer.create 65536
  and len = ref size in
  while !len <> 0 do
    len := input ch strbuf 0 size;
    Buffer.add_substring buf strbuf 0 !len; done;
  Buffer.contents buf

let _ =
  let str = read_whole_channel stdin in
  let str = qreplace ~pat:"/\\*(.|\n)*?\\*/" str in
  let str = qreplace_first ~pat:"^(\n|\\s)+" str in
  let str = qreplace ~pat:"\n+((\n|\\s)\n)*" ~templ:"\n" str in
  print_string str