Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Декодирование utf ->1251 - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Декодирование utf ->1251
PATRI0T Дата: Пятница, 18.11.2016, 11:38 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация: 4 ±
Замечаний: 0% ±

Excel 2013
Добрый день.
При парсинге JSON c сайта все русские слова оказались закодированы в таком виде

\u0414\u0436\u0435\u043d\u0442\u0440\u0430

Очень хороший сервис в сети 2cyr.com/decode подсказал, что тут зашифровано слово "Джентра"

Подскажите, как написать функцию по раскодировке?
Или может быть уже что-то есть готовое, я правда не нашел.
Или хотя бы почитать про подобную кодировку..

Большое спасибо.
 
Ответить
СообщениеДобрый день.
При парсинге JSON c сайта все русские слова оказались закодированы в таком виде

\u0414\u0436\u0435\u043d\u0442\u0440\u0430

Очень хороший сервис в сети 2cyr.com/decode подсказал, что тут зашифровано слово "Джентра"

Подскажите, как написать функцию по раскодировке?
Или может быть уже что-то есть готовое, я правда не нашел.
Или хотя бы почитать про подобную кодировку..

Большое спасибо.

Автор - PATRI0T
Дата добавления - 18.11.2016 в 11:38
китин Дата: Пятница, 18.11.2016, 11:44 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 7040
Репутация: 1080 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Кириллица в Юникоде
Это шестнадцатеричные коды кириллических букв в таблице Unicode.


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
СообщениеКириллица в Юникоде
Это шестнадцатеричные коды кириллических букв в таблице Unicode.

Автор - китин
Дата добавления - 18.11.2016 в 11:44
PATRI0T Дата: Пятница, 18.11.2016, 11:44 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация: 4 ±
Замечаний: 0% ±

Excel 2013
все, нашел :) Всем спасибо :)

http://excelvba.ru/code/ReplaceUnicode

[vba]
Код
Function ReplaceUnicodeChars(ByVal txt$) As String
    ' ищет в тексте txt$ коды символов Unicode (типа \u2013, \u201d)
    ' и заменяет коды этих символов на сами символы
    On Error Resume Next: Err.Clear
    Static REGEXP As Object
    If REGEXP Is Nothing Then
        Set REGEXP = CreateObject("VBScript.RegExp")
        REGEXP.Global = True
        REGEXP.Pattern = "\\u[0-9a-f]{4}"
    End If
    If REGEXP.test(txt) Then    ' если в тексте присутствуют коды символов
        Set objMatches = REGEXP.Execute(txt)
        For i = 0 To objMatches.Count - 1
            code$ = objMatches.Item(i).Value    ' очередной найденный код (например, \u201d)
            charcode& = Val(Replace(code$, "\u", "&H"))    ' получаем код символа
            If charcode& Then txt = Replace(txt, code$, ChrW(charcode&))    ' выполняем замену кода на символ
        Next
    End If
    ReplaceUnicodeChars = txt
End Function
[/vba]

=============
Кстати, а что за символ доллара в конце некоторых переменных?
code$ txt$ ??
 
Ответить
Сообщениевсе, нашел :) Всем спасибо :)

http://excelvba.ru/code/ReplaceUnicode

[vba]
Код
Function ReplaceUnicodeChars(ByVal txt$) As String
    ' ищет в тексте txt$ коды символов Unicode (типа \u2013, \u201d)
    ' и заменяет коды этих символов на сами символы
    On Error Resume Next: Err.Clear
    Static REGEXP As Object
    If REGEXP Is Nothing Then
        Set REGEXP = CreateObject("VBScript.RegExp")
        REGEXP.Global = True
        REGEXP.Pattern = "\\u[0-9a-f]{4}"
    End If
    If REGEXP.test(txt) Then    ' если в тексте присутствуют коды символов
        Set objMatches = REGEXP.Execute(txt)
        For i = 0 To objMatches.Count - 1
            code$ = objMatches.Item(i).Value    ' очередной найденный код (например, \u201d)
            charcode& = Val(Replace(code$, "\u", "&H"))    ' получаем код символа
            If charcode& Then txt = Replace(txt, code$, ChrW(charcode&))    ' выполняем замену кода на символ
        Next
    End If
    ReplaceUnicodeChars = txt
End Function
[/vba]

=============
Кстати, а что за символ доллара в конце некоторых переменных?
code$ txt$ ??

Автор - PATRI0T
Дата добавления - 18.11.2016 в 11:44
SLAVICK Дата: Пятница, 18.11.2016, 11:48 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
а что за символ доллара в конце некоторых переменных?
Ответ тут


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
а что за символ доллара в конце некоторых переменных?
Ответ тут

Автор - SLAVICK
Дата добавления - 18.11.2016 в 11:48
krosav4ig Дата: Пятница, 18.11.2016, 14:25 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а у мну вот такая функция есть
[vba]
Код
Function Unescape$(uStr$)
    With CreateObject("scriptcontrol")
        .Language = "JScript"
        Unescape = .Eval("unescape(""" & uStr & """)")
    End With
End Function
[/vba]
и, на всякий случай, с помощью того же scriptcontrol можно парсить json, например вот
UPD.
Исправил косяк в коде


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 18.11.2016, 18:10
 
Ответить
Сообщениеа у мну вот такая функция есть
[vba]
Код
Function Unescape$(uStr$)
    With CreateObject("scriptcontrol")
        .Language = "JScript"
        Unescape = .Eval("unescape(""" & uStr & """)")
    End With
End Function
[/vba]
и, на всякий случай, с помощью того же scriptcontrol можно парсить json, например вот
UPD.
Исправил косяк в коде

Автор - krosav4ig
Дата добавления - 18.11.2016 в 14:25
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2026 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!