1 (изменено: baplo, 2018-06-03 23:23:45)

Тема: AHK: [Решено] IfInString несколько значений в одной строке

Здравствуйте!
Буду коротко:


IfInString, HKey , "+|!|^|#"
{
Hkey = 
Msgbox, %Hkey%
}
Else
{
Msgbox, Не найдено
}

При значение переменной


HKey = +1

Msgbox выдает вторую строку Else.

Спрашивается: почему он не находит в переменной знака +?
Как правильно указать определенные слова в instr?
например если нашел + или ! или ^ или # - Очистить переменную.

Люблю когда мне понижают репутацию (мне правда все равно)

2

Re: AHK: [Решено] IfInString несколько значений в одной строке

svoboden пишет:

Так в справке написано, что не рекомендуется использовать эти команды в новых сценариях:

Deprecated: These commands are not recommended for use in new scripts. Use the InStr function instead.

Используйте команду InStr().


Не знаю что там написано, но я сделал вот так, вроде работает:

If (InStr(Hkey,"+") or InStr(Hkey,"!") or InStr(Hkey,"^") or InStr(Hkey,"#"))
Люблю когда мне понижают репутацию (мне правда все равно)

3

Re: AHK: [Решено] IfInString несколько значений в одной строке

Тоже не знаю, просто изначально был выбран не тот оператор, а тот что был выбран, работает правильно.

HKey = +1

If HKey contains +,!,^,#
{ 
	Msgbox, %Hkey%
}
Else
{
	Msgbox, Не найдено
}
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.29.01 (Unicode 32-bit).

4 (изменено: baplo, 2018-06-07 06:28:59)

Re: AHK: [Решено] IfInString несколько значений в одной строке

serzh82saratov пишет:

Тоже не знаю, просто изначально был выбран не тот оператор, а тот что был выбран, работает правильно.

HKey = +1

If HKey contains +,!,^,#
{ 
	Msgbox, %Hkey%
}
Else
{
	Msgbox, Не найдено
}

Это хороший способ.
А можно ли узнать где нибудь подробнее про все IF дополнения?
Ну по типу того, что вы добавили "contains"

Вдруг пригодится на будущее.

Есть ли еще какие то варианты с IF?

Например:
Если Var1 не содержится символов из Var2 но Содержится в Var3
действие

Люблю когда мне понижают репутацию (мне правда все равно)

5

Re: AHK: [Решено] IfInString несколько значений в одной строке

baplo пишет:

А можно ли узнать где нибудь подробнее про все IF дополнения?

Вы удивитесь, но можно в справке.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

6

Re: AHK: [Решено] IfInString несколько значений в одной строке

teadrinker пишет:
baplo пишет:

А можно ли узнать где нибудь подробнее про все IF дополнения?

Вы удивитесь, но можно в справке.

Справка это хорошо, но справка не всегда рассказывает в одной теме о всех командах и способах подробнее.

Я имел ввиду такие темы, по типу больших статей посвященные конкретной команде.

Люблю когда мне понижают репутацию (мне правда все равно)

7

Re: AHK: [Решено] IfInString несколько значений в одной строке

В справке есть поиск.
Вбиваете if и получаете все команды.