forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=13)
-   -   lower$ и Trim$ не работают с русскими словами (http://forum.boolean.name/showthread.php?t=20173)

Harts 01.02.2016 02:17

lower$ и Trim$ не работают с русскими словами
 
Всем доброго дня.
Я никак не могу найти решение данной проблеме.

Моя проблема заключается в том, что при использование Trim удаляет 3 начальных символа место пробелов.
А с командой Lower нечего не происходить.
Цитата:

Local txt$ = Trim(Lower(" АРБУЗ "))
Print txt
Место строчного слова и без пробелов, я получаю: УЗ.

Вопрос:
Как или что необходимо сделать, чтобы код нормально работал?

ABTOMAT 01.02.2016 02:49

Ответ: lower$ и Trim$ не работают с русскими словами
 
Ошибок в этом коде я не вижу.
Увы и ахъ, если это действительно так, видимо, это баг Блитза, исправить его никак.

Harts 01.02.2016 03:24

Ответ: lower$ и Trim$ не работают с русскими словами
 
Цитата:

Сообщение от ABTOMAT (Сообщение 303765)
Ошибок в этом коде я не вижу.
Увы и ахъ, если это действительно так, видимо, это баг Блитза, исправить его никак.

Спасибо что откликнулся.

Не может быть, чтобы не было решения.

Andvrok 01.02.2016 11:34

Ответ: lower$ и Trim$ не работают с русскими словами
 
Решение так-то есть: не мучать трупешник и дать ему догнить спокойно.

Жека 01.02.2016 12:00

Ответ: lower$ и Trim$ не работают с русскими словами
 
Если приемлемо, то использовать только латинские символы.
Или сделать транслитерацию, но тут нужно придумать способ распознавать комбинации из нескольких символов.

Harts 01.02.2016 14:49

Ответ: lower$ и Trim$ не работают с русскими словами
 
Цитата:

Сообщение от Жека (Сообщение 303774)
Если приемлемо, то использовать только латинские символы.
Или сделать транслитерацию, но тут нужно придумать способ распознавать комбинации из нескольких символов.

Если подумать, то отличная идея:
Создать функцию, которая преобразует из Кир. в Лат. и Наоборот.

Буду пробовать.

И да, есть готовые функции?

mingw 01.02.2016 15:23

Ответ: lower$ и Trim$ не работают с русскими словами
 
Эти функции работают с текстом только в кодировке ANSI, либо сам файл исходника кодируется в ANSI, а еще может быть и то и другое.

Harts 01.02.2016 15:46

Ответ: lower$ и Trim$ не работают с русскими словами
 
Цитата:

Сообщение от mingw (Сообщение 303784)
Эти функции работают с текстом только в кодировке ANSI, либо сам файл исходника кодируется в ANSI, а еще может быть и то и другое.

Знаю.
FastText_Ascii.bb
И про кодировку ANSI, то же.

Но вопрос о том:
Есть готовые функции, которая преобразует из Кир. в Лат. и Наоборот?

SBJoker 02.02.2016 01:37

Ответ: lower$ и Trim$ не работают с русскими словами
 
Вообще-то это делается легко и на васике.

Всё что нужно - отыскать таблицу кодировки ANSI с русской второй половиной.
Посмотреть диапазон маленьких русских букв и аналогичный им диапазон больших букв, простым вычитанием узнать смещение.

Далее в своих реализациях указанных в заголовке функций, проверять попадает ли очередной символ в диапазон больших или малых русских букв, если нет вызывать встроенные функции, если да - добавлять/вычитать из кода символа смещение между большими и малыми буквами.

Отдельно нужно обрабатывать букву Ё. Она на отшибе в таблице.

Harts 02.02.2016 22:53

Ответ: lower$ и Trim$ не работают с русскими словами
 
Ни как не получаеться создать функцию для Trim


Часовой пояс GMT +4, время: 07:49.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot