Участник
Пользователь
- Сообщения
- 49
- Реакции
- 32
Доброго здравия всем читающим. Уже несколько часов ломаю голову, не понимая как работает Regex.
Суть в следующем:
Есть срока, содержащая различные "левые" символы. Необходимо получить чистую строчку.
Задача усложняется тем, что строка может содержать абсолютно рандомные символы, вплоть до подобных - ©
Что я пытаюсь делать:
Объявил паттерн в начале плагина, предварительно протестировав на различных сервисах
Далее я пытаюсь найти совпадения по этому шаблону и получить результат из хендла (цикл сделал с заделом на несколько результатов, не обращайте внимание)
При этом в консоли я вижу вот это. В игре такой же результат
При этом, если использовать английский язык, то все прекрасно работает
Подскажите, что я делаю не так? Это ошибка в паттерне или Regex не может работать с кириллицей? Может, есть другой способ очистить строку от всякой ерунды с сохранением знаков препинания?
Суть в следующем:
Есть срока, содержащая различные "левые" символы. Необходимо получить чистую строчку.
Задача усложняется тем, что строка может содержать абсолютно рандомные символы, вплоть до подобных - ©
Что я пытаюсь делать:
Объявил паттерн в начале плагина, предварительно протестировав на различных сервисах
new g_szRegexPattern[] = "[a-zA-Zа-яА-Я.-]+";
Далее я пытаюсь найти совпадения по этому шаблону и получить результат из хендла (цикл сделал с заделом на несколько результатов, не обращайте внимание)
Код:
new test_str[] = "$$$Красивая.строка$$$$";
new iRetNum, test_result_str[64];
new Regex:regex_handle = regex_match(test_str, g_szRegexPattern, iRetNum);
if(regex_handle >= REGEX_OK){
for(new i=0; i < iRetNum; i++){
regex_substr(regex_handle, i, test_result_str, charsmax(test_result_str));
}
server_print("test_result_str: %s, iRetNum: %d", test_result_str, iRetNum);
При этом, если использовать английский язык, то все прекрасно работает
Подскажите, что я делаю не так? Это ошибка в паттерне или Regex не может работать с кириллицей? Может, есть другой способ очистить строку от всякой ерунды с сохранением знаков препинания?