Pomoc w tworzeniu regexa

Pytania i problemy
jbrudek
jbrudek

Tak jak w temacie chciałbym by owy regex miał: znaki specjalne, polskie znaki, litery, liczby i symbole !@#$%^&*()_-+={[}];:'"\|<,>.?/ .

Narazie mam "^[a-zA-Z0-9 ]*$"

Axerr
Axerr

^[a-zA-Z0-9!@#$%^&*()_-+={[}];:’"|<,>.?/ \s\p{L}]+$

jbrudek
jbrudek

nie wiem czy robie coś nie tak ale ten regex wpuszcza wszystkie znaki np.tฬóן ภเςк, przy tym jednak nie działa już ❉ ✱ ✲

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Do czego dokładnie ten regex ma być używany? Jakie dane będzie szukać/walidować?

jbrudek
jbrudek

Przykładowo chcę by dane przed wysłaniem na czacie były sprawdzane czy nie zawierają dajmy na to symbolów ❉ ✱ ✲ pozostawiając przy tym wszystkie inne polskie znaki których na co dzień używamy.

Możecie jeśli jest zaproponować inne rozwiązanie.

Axerr
Axerr
Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Ok, w końcu ma to więcej sensu. Czyli chcesz zablokować w Minecraft lub innej grze pisanie na czacie znakami unicode, które wyglądają podobnie, bo omija to twój system cenzury/antyreklamy, czy coś takiego?

jbrudek
jbrudek

Dokładnie

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Jest to trochę droga na około i psucie UX, jeśli zrobisz whitelistę i dodatkowo będziesz blokować wiadomości, które nie zgadzają się z regułą.

Najlepszą opcją byłoby użyć rozwiązania, które radzi sobie też z innymi wiadomościami niż samo ascii.

Raczej nie robiłbym whitelisty, tylko najwyżej blacklistował te konkretne, z którymi masz problem, jeśli nie chcesz psuć życia użytkownikom.

Axerr
Axerr

Zablokowanie wszystkich dostępnych "złych" znaków może trwać dość długo. Łatwiej jest zrobić whitelistę i zanegować, aby sprawdzić, czy znaki są prawidłowe.

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

To szybkie i brudne rozwiązanie, które będzie mieć z dużą szansą negatywny wpływ na odczucia innych graczy, którzy wcale nie chcieli niczego omijać, tylko użyli np. kanji emoji.

To nie jest dobra droga, tylko próba łatania tego od złej strony. Blacklista na konkretne znaki ma jeszcze sens, whitelista (szczególnie z blokowaniem) jest bardzo słaba dla UX, a bez blokowania (usuwanie niepasujących znaków) jest zwyczajnie mało użyteczna.

system
system

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.