Страница 1 из 2

Сравнение содержимого CSTRING и STRING

Добавлено: 23 Июнь 2020, 19:28
morkovin
C11

Код: Выделить всё

myCSTR    CSTRING(81)
mySTR      STRING(80)

  IF myCSTR <> mySTR  THEN
  ...
 
Сравнение будет выполняться корректно? Что-то меня грызут сомнения :(

Сравнение содержимого CSTRING и STRING

Добавлено: 23 Июнь 2020, 20:18
ingasoftplus
нет не будет. STRING будет с пробелам в хвосте, а СSTRING - нет. Делайте clip(STRING)

Сравнение содержимого CSTRING и STRING

Добавлено: 23 Июнь 2020, 23:07
vic7tar
ingasoftplus писал(а): 23 Июнь 2020, 20:18 нет не будет. STRING будет с пробелам в хвосте, а СSTRING - нет. Делайте clip(STRING)
Ответ неправильный.

Сравнение содержимого CSTRING и STRING

Добавлено: 24 Июнь 2020, 18:13
ingasoftplus
vic7tar писал(а): 23 Июнь 2020, 23:07
ingasoftplus писал(а): 23 Июнь 2020, 20:18 нет не будет. STRING будет с пробелам в хвосте, а СSTRING - нет. Делайте clip(STRING)
Ответ неправильный.
ну да, потому что условие <>

Сравнение содержимого CSTRING и STRING

Добавлено: 24 Июнь 2020, 18:22
gopstop2007
может проще

Код: Выделить всё

myCSTR    CSTRING(81)
mySTR      STRING(80)
mySTRVerify      STRING(80)

mySTRVerify = myCSTR
  IF CLIP(mySTRVerify) <> CLIP(mySTR)  THEN
  ...

Сравнение содержимого CSTRING и STRING

Добавлено: 24 Июнь 2020, 19:46
RaFaeL

Код: Выделить всё

IF clip(myCSTR) <> clip(mySTR)  THEN
Этого достаточно, инфа сотка

Сравнение содержимого CSTRING и STRING

Добавлено: 24 Июнь 2020, 19:58
vic7tar
Я хочу сказать, что

Код: Выделить всё

myCSTR    CSTRING(81)
mySTR     STRING(80)

  IF myCSTR <> (=)  mySTR  THEN
  ...
будет обрабатываться правильно без всяких клипов.

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 7:41
morkovin

Код: Выделить всё

IF clip(myCSTR) <> clip(mySTR)  THEN
так у меня сейчас. Но осадочек какой-то остаётся. Я думаю, может при Copy/Paste из Word-а, например, попадают непечатаемые (и невидимые) символы? Теоретически может такое быть?

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 9:45
Yufil
Сколько угодно.
Неразрывный пробел &nbsp; = '<160>' внешне не отличается от обычного.
Тире – &ndash; = '<150>'
Длинное тире — &mdash = '<151>' почти не отличается от знака '-'.

Я проверяю. если необходимо...

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 10:02
morkovin
Yufil писал(а): 25 Июнь 2020, 9:45 Я проверяю. если необходимо...
В каком эмбеде это лучше делать? Можно ли использовать RegExp (я не силён в них :( )?

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 10:14
morkovin
Вспомнил! Когда-то я пытался использовать эту прогу
https://stevemiller.net/PureText/
Но с кириллицей она не дружит. Да и как юзерам её навяжешь. Надо делать что-то самому.

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 10:37
vic7tar
Yufil писал(а): 25 Июнь 2020, 9:45 ...
Тире – &ndash; = '<150>'
Длинное тире — &mdash = '<151>' почти не отличается от знака '-'.
Так и никакой clip() тут не поможет.

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 11:25
Yufil
morkovin писал(а): 25 Июнь 2020, 10:02
Yufil писал(а): 25 Июнь 2020, 9:45 Я проверяю. если необходимо...
В каком эмбеде это лучше делать? Можно ли использовать RegExp (я не силён в них :( )?
Просто функцию написать, принимающую текст и заменяющую сомнительные символы, делов на пять минут.
А Regexp ( функция Match ) в Кларионе убогий...

Я бы, наверное, написал функцию MyClipboard(), возвращающую очищенный буфер обмена....

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 11:57
Дед Пахом
RegExp в Кларионе прекрасный, только не из коробки который, а этот

Сравнение содержимого CSTRING и STRING

Добавлено: 25 Июнь 2020, 12:17
Admin
Это бесплатно?