The solution to your problem is much simpler than you realize.

Just take every sentence spoken that contain characters outside of standard ASCII (/[^\x20-\x7F]/u) and then use a comprehensive $replace() function to convert letter-like characters into their corresponding ASCII letters. Once you have done this, then process the string through your standard ASCII swear filter as you normally would.

Code:
var %string = $1-
if ($regex(%string,/[^\x20-\x7F]/u)) {
  var %string = $replacexcs(%string, $&
  À,A,Á,A,Â,A,Ã,A,Ä,A,Å,A,Æ,A,Ç,C,È,E,É,E,Ê,E,Ë,E,Ì,I,Í,I,Î,I,Ï,I, $&
  Ð,D,Ñ,N,Ò,O,Ó,O,Ô,O,Õ,O,Ö,O,×,x,Ø,O,Ù,U,Ú,U,Û,U,Ü,U,Ý,Y,Þ,P,ß,B, $&
  à,a,á,a,â,a,ã,a,ä,a,å,a,æ,a,ç,c,è,e,é,e,ê,e,ë,e,ì,i,í,i,î,i,ï,i, $&
  ð,o,ñ,n,ò,o,ó,o,ô,o,õ,o,ö,o,ø,o,ù,u,ú,u,û,u,ü,u,ý,y,þ,p)
} ; by Raccoon 2018 (untested)

Is it short pretty code? No. Is it fast? Yes.

_________________________
/hadd table thirdbadword raccoon