Non-breaking whitespace (MySQL): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
Regel 18: Regel 18:
  
 
Ongetwijfeld kunnen regular expressions overweg met karaktercodering, maar dit lijkt niet de manier te zijn (met <code>\\\</code> lukt 't ook niet).
 
Ongetwijfeld kunnen regular expressions overweg met karaktercodering, maar dit lijkt niet de manier te zijn (met <code>\\\</code> lukt 't ook niet).
 +
 +
=== unhex ===
 +
 +
<code>unhex</code> lijkt precies te zijn wat ik zoek, behalve dat 't niet lijkt te werken.
 +
 +
<pre>
 +
select unhex(
 +
</pre>
  
 
== Bronnen ==
 
== Bronnen ==

Versie van 1 dec 2019 07:10

Dit is het probleem: De eerste spatie is geen gewone spatie (0x20), maar NBSP (Non-breaking whitespace): 0xc2a0. Hoe fix ik dat?

Tijdens verwerken van een UTF-8 import-bestand in MySQL, leek het alsof MySQL spaties niet herkende (Dec. 2019). Uiteindelijk bleken de betreffende strings geen gewone spaties te bevatten (20), maar Non-breaking white spaces (c2 a0).

  • Hoe herken je NBSP in strings?
  • Hoe vervang je NBSP voor gewone spaties?

Niet

Regular expressions

Filteren mbv. ASCII-codes in regular expressions, lijkt niet zomaar te werken:

select device_sku from device_tmp
where
	device_sku regexp "\x42";

Ongetwijfeld kunnen regular expressions overweg met karaktercodering, maar dit lijkt niet de manier te zijn (met \\\ lukt 't ook niet).

unhex

unhex lijkt precies te zijn wat ik zoek, behalve dat 't niet lijkt te werken.

select unhex(

Bronnen