Регулярное выражение для поиска \uXXXX-закодированных символов в строке

В общем работал я с ACF-блоками…

😁 Конечно, я никогда бы не стал работать с ними, но дело в том, что чел уж очень хотел, чтобы одна фишка работала на его сайте, а сайт его был сделан целиком на ACF-блоках. Причём, когда я начал его осуждать за их использование, он начал такую тему, что да у них в стране все агентства используют ACF-блоки и что я ничего не понимаю в агентсткой экономике.

Как бы там ни было, вся ситуация заключалась в том, что, когда при помощи одного из моих плагинов мы переносили контент ACF-блоков с одного сайта на другой внутри сети WordPress Multisite, то символы аля á и ó превращались в u00e1 и u00f3, даже без обратных слэшей.

Ну так вот, для того, чтобы поправить эту историю, мне понадобилось регулярное выражение для поиска символов типа \u0000 в строке.

И вот и оно:

$str = '\u00e1 and \u00f3';
 
preg_match_all( "/\u([0-9a-f]{3,4})/i", $str, $matches );
print_r( $matches );
/*
Array
(
    [0] => Array
        (
            [0] => u00e1
            [1] => u00f3
        )
 
    [1] => Array
        (
            [0] => 00e1
            [1] => 00f3
        )
 
)
*/

Ну как-то так. Надеюсь, помог!

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал