Posted to tcl by kbk at Mon Apr 16 15:41:55 GMT 2007view raw
- 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
- }