Posted to tcl by kbk at Mon Apr 16 15:41:55 GMT 2007view pretty
set utf8re [makeUtf8Regexp] puts "utf8re is [string length $utf8re] chars" set utf8str $utf8re+ proc fixBadUtf8 {data} { variable utf8str set retval {} set i 0 foreach pair [regexp -all -indices -inline $utf8str $data] { foreach {start end} $pair break append retval [string repeat \ufffd [expr {$start-$i}]] \ [string range $data $start $end] set i [expr {$end+1}] } append retval [string repeat \ufffd [expr {[string length $data]-$i}]] return $retval }