Encoding troubles

Hello All

I have a set of files, each one containing some lines that follows that regex:

regex='disabled\,.*\,\".*\"'

and here is what file says about each files:

file <random file>
<random file> ASCII text, with CRLF line terminators

So, as an example, here is what a file ("Daffy Duck - The Marvin Missions (USA).cht" is its name) says:

disabled,C283-3D6F,"Invincibility" 
disabled,DFBD-1DA4,"Start with 1 life" 
disabled,DBBD-1DA4,"Start with 9 lives (don't set lives in options menu)" 
disabled,49BD-1DA4,"Start with 25 lives (don't set lives in options menu)" 
disabled,9FBD-1DA4,"Start with 51 lives (don't set lives in options menu)" 
disabled,DDB3-3404,"Infinite lives" 
disabled,DDA8-4466,"Extra lives cost $500" 
disabled,DFA8-4466,"Extra lives cost $1,500"

It's not visible on this forum, but I have a character encoding problem on the `'` on lines 3-5
In order to check the syntax of each file, I wrote a small bash script (see below) that check each line against the regex above. But due to this small encoding problem, my script echoes those lines although they match the regex.
My script:

#!/bin/bash

regex='disabled\,.*\,\".*\"'
for f in *cht; do
    while read line; do
        if [[ ! "${line}" =~ ${regex} ]]; then
            echo "$f - $line"
        fi
    done < "$f"
    
done

exit 0

stdout:

Daffy Duck - The Marvin Missions (USA).cht - disabled,DBBD-1DA4,"Start with 9 lives (dont set lives in options menu)"
Daffy Duck - The Marvin Missions (USA).cht - disabled,49BD-1DA4,"Start with 25 lives (dont set lives in options menu)"
Daffy Duck - The Marvin Missions (USA).cht - disabled,9FBD-1DA4,"Start with 51 lives (dont set lives in options menu)"

Any advices to get rid of those (replacing is not an option)? Thank you for reading.

' in your cht file is Asian char with double byte.

Maybe you need replace to real ' by SED first. You will see the difference below

don�t 
don't

Ah, Thank you for pointing that out, I didn't notice at all.
But the problem is still the same: I don't know how to tell sed about this char:

(bigger font to see the [0092]) or this one ().

Ok I found a way to tell sed about that [0092] char.
As an example, let's take this line:

disabled,DBBD-1DA4,"Start with 9 lives (don[0092]t set lives in options menu)"

(as seen on the screenshot above.)
Let's use the od command to see what's inside this char:

echo 'disabled,DBBD-1DA4,"Start with 9 lives (don[0092]t set lives in options menu)"' | od -c
0000000   d   i   s   a   b   l   e   d   ,   D   B   B   D   -   1   D
0000020   A   4   ,   "   S   t   a   r   t       w   i   t   h       9
0000040       l   i   v   e   s       (   d   o   n 302 222   t       s
0000060   e   t       l   i   v   e   s       i   n       o   p   t   i
0000100   o   n   s       m   e   n   u   )   "  \n
0000113

We clearly see 302 and 222 that seem to compose our '
Using this, we can then write

$ echo 'disabled,DBBD-1DA4,"Start with 9 lives (don[0092]t set lives in options menu)"' | sed 's/'$(echo $'\302'$'\222')'/'$(echo $'\'')'/'

(works at least in bash)