Сравнение строк

Автор Тема: Сравнение строк  (Прочитано 5971 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tujn08Автор темы

  • ADN OPEN
  • Сообщений: 21
  • Карма: 0
    • КОМПЛЕКСНАЯ СИСТЕМА УДАЛЕННОГО ПРОЕКТИРОВАНИЯ
  • Skype: RIES.PRO
Сравнение строк
« : 31-03-2017, 09:01:46 »
Привет!
Что-то не получается работать с "wcmatch"

Надо сравнивать строки - могут отличаться словами или цифрами.

Код - Auto/Visual Lisp [Выбрать]
  1. Команда: (wcmatch "qweqwe asdasd" "123,*")
  2. T

живой пример:

Код - Auto/Visual Lisp [Выбрать]
  1. (wcmatch aa (strcat abc_abc ",*"))
  2. T
  3. (princ aa)
  4. "Общая длина - 555м"
  5.  
  6. (princ abc_abc)
  7. "Общая длина - "
тут все нормально, а вот тут:

Код - Auto/Visual Lisp [Выбрать]
  1.  (wcmatch aa (strcat abc_abc ",*"))
  2. T
  3.  
  4. (princ aa)
  5. "Общая длина в лотке - 555м"
  6.  
  7. (princ abc_abc)
  8. "Общая длина - "

Шаблон отличается "- " и "в лотке - "   почему Т ?

Уже подсказали - в книге не совсем ясно расписано про удовлетворении хотя бы одной из масок.
« Последнее редактирование: 31-03-2017, 11:29:49 от tujn08 »

Отмечено как Решение tujn08 31-03-2017, 11:30:34

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Сравнение строк
« Ответ #1 : 31-03-2017, 11:27:48 »
Видимо ты не понимаешь как работает (wcmatch). Начни со справки по этой функции. Тогда ты поймёшь, почему:

Command: (setq abc_abc "Общая длина - ")
"Общая длина - "
Command: (setq aa "абракадабра")
"абракадабра"
Command: (wcmatch aa (strcat abc_abc ",*")) T

« Последнее редактирование: 31-03-2017, 12:18:23 от Александр Ривилис »
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение