sql >> Database >  >> RDS >> Mysql

mysql regex utf-8 tekens

De reguliere expressiebibliotheek van MySQL ondersteunt utf-8 niet.

Zie Bug #30241 Problemen met reguliere expressies , die sinds 2007 open is. Ze zullen de reguliere expressiebibliotheek die ze gebruiken moeten veranderen voordat dat kan worden opgelost, en ik heb geen aankondiging gevonden van wanneer en of ze dit zullen doen.

De enige oplossing die ik heb gezien, is zoeken naar specifieke HEX-tekenreeksen:

mysql> SELECT * FROM `content` WHERE HEX(`text`) REGEXP 'C3A9C588';
+----------+
| text     |
+----------+
| siréňa   |
+----------+

Opnieuw uw opmerking:

Nee, ik ken geen oplossing met MySQL.

Mogelijk moet u overschakelen naar PostgreSQL, omdat dat RDBMS \u . ondersteunt codes voor UTF-tekens in hun syntaxis voor reguliere expressies .



  1. Klassieke ASP + Motobit Pure ASP-upload + UTF-8-tekenset

  2. Hoe kan ik set-achtige uniciteit tussen meerdere kolommen afdwingen?

  3. Hoe aanmeldingen werken op gekoppelde servers (T-SQL-voorbeelden)

  4. Krijg gegevens tussen twee datums op MySQL