Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.08.2018, 12:32   #1
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
Счастье Как сделать фильтр сообщений от chromium console message?

Здравствуйте!
Подскажите пожалуйста, как сделать фильтр сообщений от chromium console message? Чтоб в ListBox попадали только числа, запятые и пробелы: 01, 02, 03, 04, 05, и т.д.

Код:
procedure TForm2.Chromium1ConsoleMessage(Sender: TObject;
  const browser: ICefBrowser; const message, source: ustring; line: Integer;
  out Result: Boolean);
begin
    if ????????? then
      begin
          ListBox1.Items.Add(str);
      end;

end;
Женя32 вне форума Ответить с цитированием
Старый 21.08.2018, 15:42   #2
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
По умолчанию

Почему такая проверка не проходит?:

Код:
procedure TForm2.Chromium1ConsoleMessage(Sender: TObject;
  const browser: ICefBrowser; const message, source: ustring; line: Integer;
  out Result: Boolean);
  var
    str: ustring;
begin
        str:= message;
     if str in ['0'..'9', ',', ' '] then
          begin
          ListBox1.Items.Add(str);
          end;

end;
Женя32 вне форума Ответить с цитированием
Старый 21.08.2018, 15:46   #3
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Потому что "01" и '0' - это разные вещи. Если вам нужны именно проверка на 01, 02, .. Сделайте проверку первых двух символов на цифры, если сложнее, то regex.

Последний раз редактировалось p51x; 21.08.2018 в 15:48.
p51x на форуме Ответить с цитированием
Старый 21.08.2018, 15:52   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от Женя32 Посмотреть сообщение
Почему такая проверка не проходит?:
Потому что написано некорректно

Цитата:
Сообщение от Женя32 Посмотреть сообщение
Код:
if str in ['0'..'9', ',', ' '] then
даже если не брать во внимание, как ustring может преобразовываться в элементы множества, даже в этом случае Вы написали
если строка str входит в множество ['0'..'9', ',', ' '] тогда...
а что значит "входит" в множество? Это означает, строка str является одним из элементов множества. т.к. str должна быть или '0' или '1' или ... ',' или ' '
но никак не сочетанием этих символов.

Расскажите, что может быть в строке message и что Вы хотите добиться?

вот, например, если в строке message такое - "Warning #10050, not object, or null" - то что должно произойти (что должно добавиться в ListBox1 ?


p.s. и не используйте str для имени переменной - str имя стандартной процедуры. как минимум это некрасиво.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.08.2018, 15:54   #5
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Потому что "01" и '0' - это разные вещи.
А как можно решить задачу?
Женя32 вне форума Ответить с цитированием
Старый 21.08.2018, 16:18   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от Женя32 Посмотреть сообщение
А как можно решить задачу?
какую именно задачу?

Цитата:
Расскажите, что может быть в строке message и что Вы хотите добиться?

вот, например, если в строке message такое - "Warning #10050, not object, or null" - то что должно произойти (что должно добавиться в ListBox1 ?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.08.2018, 16:32   #7
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
Счастье

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
...
вот, например, если в строке message такое - "Warning #10050, not object, or null" - то что должно произойти (что должно добавиться в ListBox1 ?
...
[/I]
Ничего, кроме чисел, пробелов и запятых, в ListBox1 не должно добавляться......
А то у меня с начало в ListBox попадает вот это сообщение:
VIDEOJS:
Required parameter 'value' is missing event 'Purchase'

Или как-то потом можно очистить ListBox от всего лишнего?
Женя32 вне форума Ответить с цитированием
Старый 21.08.2018, 16:36   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Если вам нужны именно проверка на 01, 02, .. Сделайте проверку первых двух символов на цифры, если сложнее, то regex.
Обновляйте страницу.
p51x на форуме Ответить с цитированием
Старый 21.08.2018, 17:09   #9
Женя32
Форумчанин
 
Регистрация: 12.09.2008
Сообщений: 621
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
... Если вам нужны именно проверка на 01, 02, .. Сделайте проверку первых двух символов на цифры, если сложнее, то regex.
Дак, тема то об этом, как эту саму проверку сделать?
Женя32 вне форума Ответить с цитированием
Старый 21.08.2018, 17:11   #10
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Что? Вы не знаете как обратиться к определенному символу в строке? Или вы не знаете, как проверить, что символ находится между '0' и '9'?
p51x на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен срочно разработчик Mozilla/Chromium/С++/Windows на постоянной основе для модифицированных сборок Mozilla или Chromium для Selenium robotmaker Фриланс 6 29.10.2017 14:57
Как сделать фильтр столбцов (не строк)? jar76 Microsoft Office Excel 19 23.09.2014 11:34
javascript (логика вывода сообщений в console.log) zlo_999 Помощь студентам 3 25.03.2013 23:18
The message resource is present but the message is not found in the string/message table Apokal Win Api 0 19.05.2011 18:06
как сделать фильтр для списка combobox ? sergey113 Помощь студентам 2 13.08.2008 16:29