Описание операторов


Операторы.


В команде exect поддерживает следующие операторы присвоения, математические операторы, операторы сравнения и логические операторы.

Операторы сравнения и логические операторы используются в тернарных условиях.

Оператор Описание
      Операторы присвоения
=
Присвоение. Например: $var_i=5     (присваивает переменной $var_i число 5)
      Математические операторы
+Сложение. Например: 10+20    (равно 30)
-Вычитание. Например: 20-10    (равно 10)
*Умножение. Например: 20*10    (равно 200)
/Деление. Например: 20/10    (равно 2)
&Объединение строк. Например: 'один'&10    (равно "один10")
^Возведение в степень. Например: 2^4    (равно 16)
      Операторы сравнения (ниже указанные операторы, за исключением ==, не учитывают регистр при работе со строками, а при сравнении числа и строки, строка конвертируется в число по правилу функции Number)
=Истинно, если значение слева равно значению справа. Например $var_i=5     (True (верно), если $var_i равно 5).
==Истинно, если строки равны между собой. Учитывает регистр. Значения будут конвертированы в строки, если они не являются таковыми. Этот оператор используется только со строками, когда сравнение должно происходить с учётом регистра.
<>Истинно, если значения не равны между собой. Чтобы учитывать регистр Not ($var_i1==$var_i2)
>Истинно, если первое значение больше второго. Строки сравниваются в лексикографическом* порядке.
>=Истинно, если первое значение больше или равно второму. Строки сравниваются в лексикографическом* порядке.
<Истинно, если первое значение меньше второго. Строки сравниваются в лексикографическом* порядке.
<=Истинно, если первое значение меньше или равно второму. Строки сравниваются в лексикографическом* порядке.
      Логические операторы
AND Логическая операция И.
Например: ($var_i=5 AND $var_i2>6)
True (1), если $var_i равно 5 и $var_i2 больше, чем 6, иначе False (0)
OR Логическая операция ИЛИ.
Например: ($var_i=5 OR $var_i2>6)
True (1), если $var_i равно 5 или $var_i2 больше, чем 6, иначе False (0)
NOTЛогическая операция НЕ.
Например: NOT 1
равно False (0)
Например: NOT ($var_i1==$var_i2)
True (1), если $var_i1 и $var_i2 не равны с учётом регистра, иначе False (0)

Когда в выражении участвует больше одного оператора, порядок вычисления выражения определяется приоритетом операторов.  Приоритеты, используемые в AutoIt даны ниже.  Если два оператора имеют одинаковый приоритет - выражение вычисляется слева направо.

От высшего к низшему:

    NOT
    ^
    * /
    + -
    &
    < > <= >= = <> ==

    AND, OR


Например 2+4*10 равняется 42:

    4*10    (равно 40)

    2+40    (равно 42)

Поскольку * имеет приоритет выше, чем +, умножение выполняется раньше сложения. 


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

Например (2+4)*10 равно 60.



*лексикографический порядок означает, что сначала сравниваются первые символы каждой строки, затем вторые, и как только символы не равны возвращается True или False. В лексикографическом порядке большим значением обладает буква, у которой номер позиции в алфавите больше, то есть A < B, а учитывая цифры и другие символы порядок групп следующий: спец-символы < 0-9 < A-Z < А-Я, ещё пример А < АА < ААА < ААБ < ААВ < АБ < Б < … < ЯЯЯ, регистр букв не учитывается A=a.




© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru