Evitando palabras vigiladas con sustituciones de caracteres confusos

No estoy 100% seguro de que esto sea un error. Pero las palabras vigiladas no pueden coincidir con publicaciones codificadas de forma extraña. O no puedo escribir la expresión regular para que coincidan.

Últimamente me han llegado muchos spam. Las palabras vigiladas ayudaron inicialmente, pero ahora están publicando en una codificación extraña. El spam se ve así:

Estaba filtrando por “helpline”, que se pega aquí:

𝐇𝐞𝐥𝐩𝐥𝐢𝐧𝐞

Pero si miro lo que publican en ASCII, parece la tabla de abajo. Es algún tipo de codificación extraña. ¿Quizás MIME?

Estoy revisando el hilo relacionado sobre “Consejos para prevenir el spam” y empezando a restringir más las cosas. Pero este tipo de publicación es un desafío.

Esto no es un problema de codificación… el término que buscas son caracteres Unicode Confusables.

Incluso si fuera solo la letra C, tendríamos:

ℂ 𝕮 C 𝙲 𝑪 𝒞 𝖢 𐌂 𝗖 ꓚ Ꮯ 𐔜 С C Ⲥ 𝓒 Ⅽ ℭ 𝘊 𐐕 𝘾 🝌 𝐂 𑣲 𑣩 Ϲ 𐊢 𝐶

Esto probablemente se presentaría mejor como una solicitud de función, algo como una opción para “Reemplazar caracteres unicode confusos antes de aplicar Palabras Vigiladas”.

Para tu información, el conjunto de caracteres confusos son datos públicos publicados por el consorcio, por ejemplo:

#	C	Ⅽ	C	ௐ	С	Ꮯ	Ⲥ	ꓚ	Ϲ	ℂ	ℭ	𝐂	𝐶	𝑪	𝒞	𝓒	𝕮	𝖢	𝗖	𝘊	𝘾	𝙲
	(‎ C ‎)	0043	 LATIN CAPITAL LETTER C
←	(‎ Ⅽ ‎)	216D	 ROMAN NUMERAL ONE HUNDRED
←	(‎ C ‎)	FF23	 FULLWIDTH LATIN CAPITAL LETTER C	# →С→
←	(‎ ௐ ‎)	0BD0	 TAMIL OM	# →С→
←	(‎ С ‎)	0421	 CYRILLIC CAPITAL LETTER ES
←	(‎ Ꮯ ‎)	13DF	 CHEROKEE LETTER TLI
←	(‎ Ⲥ ‎)	2CA4	 COPTIC CAPITAL LETTER SIMA	# →Ϲ→
←	(‎ ꓚ ‎)	A4DA	 LISU LETTER CA
←	(‎ Ϲ ‎)	03F9	 GREEK CAPITAL LUNATE SIGMA SYMBOL
←	(‎ ℂ ‎)	2102	 DOUBLE-STRUCK CAPITAL C
←	(‎ ℭ ‎)	212D	 BLACK-LETTER CAPITAL C
←	(‎ 𝐂 ‎)	1D402	 MATHEMATICAL BOLD CAPITAL C
←	(‎ 𝐶 ‎)	1D436	 MATHEMATICAL ITALIC CAPITAL C
←	(‎ 𝑪 ‎)	1D46A	 MATHEMATICAL BOLD ITALIC CAPITAL C
←	(‎ 𝒞 ‎)	1D49E	 MATHEMATICAL SCRIPT CAPITAL C
←	(‎ 𝓒 ‎)	1D4D2	 MATHEMATICAL BOLD SCRIPT CAPITAL C
←	(‎ 𝕮 ‎)	1D56E	 MATHEMATICAL BOLD FRAKTUR CAPITAL C
←	(‎ 𝖢 ‎)	1D5A2	 MATHEMATICAL SANS-SERIF CAPITAL C
←	(‎ 𝗖 ‎)	1D5D6	 MATHEMATICAL SANS-SERIF BOLD CAPITAL C
←	(‎ 𝘊 ‎)	1D60A	 MATHEMATICAL SANS-SERIF ITALIC CAPITAL C
←	(‎ 𝘾 ‎)	1D63E	 MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL C
←	(‎ 𝙲 ‎)	1D672	 MATHEMATICAL MONOSPACE CAPITAL C

(¡ja, acabo de descubrir que Chromium implementa esta simplificación, al intentar buscar 𝑪 encontró la mayoría de las instancias confusibles de la letra C - ¡pruébalo aquí!)

Un algoritmo de ejemplo que utiliza estos datos está implementado en Python aquí.

En tu última captura de pantalla, @billgraziano, la primera referencia numérica codificada con ampersand que publicas ( \\u0026#119815; ) sería:

←	(‎ 𝐇 ‎)	1D407	 MATHEMATICAL BOLD CAPITAL H

(la ordinal de 𝐇 es 119815 codificada en decimal o 1D407 codificada en hexadecimal)

Así que una expresión regular completa insensible a mayúsculas y minúsculas para “helpline” que podrías usar sería:

[HHℋℌℍ𝐇𝐻𝑯𝓗𝕳𝖧𝗛𝘏𝙃𝙷Η𝚮𝛨𝜢𝝜𝞖ⲎНᎻᕼꓧ𐋏ⱧҢĦӉӇhhℎ𝐡𝒉𝒽𝓱𝔥𝕙𝖍𝗁𝗵𝗵𝚑𝚑һհᏂɦꚕᏲħℏћ][E⋿Eℰ𝐄𝐸𝑬𝓔𝔈𝔼𝕰𝖤𝗘𝘌𝙀𝙴Ε𝚬𝛦𝜠𝝚𝞔ЕⴹᎬꓰ𑢦𑢮𐊆Ɇe℮eℯⅇ𝐞𝑒𝒆𝓮𝔢𝕖𝖊𝖾𝗲𝘦𝙚𝚎ꬲеҽɇҿ][L𝈪Ⅼℒ𝐋𝐿𝑳𝓛𝔏𝕃𝕷𝖫𝗟𝘓𝙇𝙻ⳐᏞᒪꓡ𖼖𑢣𑢲𐐛𐔦ŁLjLJl‎\\|∣⏽│1‎۱𐌠‎𝟏𝟙𝟣𝟭𝟷IIⅠℐℑ𝐈𝐼𝑰𝓘𝕀𝕴𝖨𝗜𝘐𝙄𝙸Ɩlⅼℓ𝐥𝑙𝒍𝓁𝓵𝔩𝕝𝖑𝗅𝗹𝗹𝙡𝚕ǀΙ𝚰𝛪𝜤𝝞𝞘ⲒІӀ‎‎‎ⵏᛁꓲ𖼨𐊊𐌉‎‎łɭƗƚɫ‎‎‎ŀĿᒷ🄂⒈‎⒓㏫㋋㍤⒔㏬㍥⒕㏭㍦⒖㏮㍧⒗㏯㍨⒘㏰㍩⒙㏱㍪⒚㏲㍫ljIJ‖∥Ⅱǁ‎𐆙⒒Ⅲ𐆘㏪㋊㍣Ю⒑㏩㋉㍢ʪ₶ⅣⅨɮʫ㏠㋀㍙][PPℙ𝐏𝑃𝑷𝒫𝓟𝔓𝕻𝖯𝗣𝘗𝙋𝙿Ρ𝚸𝛲𝜬𝝦𝞠ⲢРᏢᑭꓑ𐊕ᒆp⍴pp𝑝𝒑𝓅𝓹𝔭𝕡𝖕𝗉𝗽𝗽𝙥𝚙ρϱ𝛒𝛠𝜌𝜚𝝆𝝔𝞀𝞎𝞺𝟈ⲣрƥᵽᑷ][L𝈪Ⅼℒ𝐋𝐿𝑳𝓛𝔏𝕃𝕷𝖫𝗟𝘓𝙇𝙻ⳐᏞᒪꓡ𖼖𑢣𑢲𐐛𐔦ŁLjLJl‎\\|∣⏽│1‎۱𐌠‎𝟏𝟙𝟣𝟭𝟷IIⅠℐℑ𝐈𝐼𝑰𝓘𝕀𝕴𝖨𝗜𝘐𝙄 आईआईƖlⅼℓ𝐥𝑙𝒍𝓁𝓵𝔩𝕝𝖑𝗅𝗹𝗹𝙡𝚕ǀΙ𝚰𝛪𝜤𝝞𝞘ⲒІӀ‎‎‎ⵏᛁꓲ𖼨𐊊𐌉‎‎łɭƗƚɫ‎‎‎ŀĿᒷ🄂⒈‎⒓㏫㋋㍤⒔㏬㍥⒕㏭㍦⒖㏮㍧⒗㏯㍨⒘㏰㍩⒙㏱㍪⒚㏲㍫ljIJ‖∥Ⅱǁ‎𐆙⒒Ⅲ𐆘㏪㋊㍣Ю⒑㏩㋉㍢ʪ₶ⅣⅨɮʫ㏠㋀㍙][Ii˛⍳iⅰℹⅈ𝐢𝑖𝒊𝒾𝓲𝔦𝕚𝖎𝗂𝗶𝘪𝙞𝚒ı𝚤ɪɩιιͺ𝛊𝜄𝜾𝝸𝞲іꙇӏꭵᎥ𑣃⍸ɨᵻᵼⅱⅲijⅳⅸ][NNℕ𝐍𝑁𝑵𝒩𝓝𝔑𝕹𝖭𝗡𝘕𝙉𝙽Ν𝚴𝛮𝜨𝝢𝞜Ⲛꓠ𐔓𐆎ƝNjNJ№n𝐧𝑛𝒏𝓃𝓷𝔫𝕟𝖓𝗇𝗻𝗻𝙣𝙣ոռɳƞη𝛈𝜂𝜼𝝶𝞰ᵰnj][E⋿Eℰ𝐄𝐸𝑬𝓔𝔈𝔼𝕰𝖤𝗘𝘌𝙀𝙴Ε𝚬𝛦𝜠𝝚𝞔ЕⴹᎬꓰ𑢦𑢮𐊆Ɇe℮eℯⅇ𝐞𝑒𝒆𝓮𝔢𝕖𝖊𝖾𝗲𝘦𝙚𝚎ꬲеҽɇҿ]
6 Me gusta

@supermathie ¡eres increíblemente útil! Eso es todo.

Habilité expresiones regulares en Palabras vigiladas, hice un apaño y veremos qué tal funciona. También estoy trabajando en algunos de los otros consejos para bloquear spam.

Después de años de casi nada de spam, alguien parece haber encontrado mis foros limpios :frowning:

2 Me gusta