2 Операторы и функции обработки строковых данных Оператор Bin Bin [$]


Название2 Операторы и функции обработки строковых данных Оператор Bin Bin [$]
страница1/24
ТипДокументы
  1   2   3   4   5   6   7   8   9   ...   24

Lotus Domino R. 5: @-формулы, LotusScript, встроенные классы LotusScript и Java

233



V_UNKNOWN "V_UNKNOWN" Только (значение OLE-объекта) Variant

Объект определенного Имя класса в символах верхнего регистра пользователем класса или (для объекта из класса EMPOYEE объект встроенного класса возвращается значение "EMPLOYEE")

Массив Имя типа массива + круглые скобки, содержащие пробел, в символах верхнего регистра (для массива типа Integer возвращается строка: "INTEGER( )").

Список Имя типа списка + слово "List" в символах верхнего регистра (для списка типа Integer возвращается строка: "STRING LIST").

Пример, Определения типа данных.

Выводит "EMPTY" Выводит "INTEGER" Выводит "STRING" Выводит "STRING"

Dim a As Variant Print TypeName(a)

a = 1

Print TypeName(a)

a = "hello" . Print TypeName (a) Dim b As String Print TypeName(b$)

' Массивы

Dim arrayl (1 To 4} As Long

Print TypeName(arrayl&) ' Выводит "LONG( )"

Dim arrayV(l To 4)

Print TypeName(arrayV) ' Выводит "VARIANT( )"

Dim у As Variant ' •

у - arrayl

Print TypeName (y) ' Выводит "LONG ( )"

' Списки Dim listStr List As String

Print TypeName(listStr$) ' Выводит "STRING LIST"

Dim listVar List

Print TypeName(listVar) ' Выводит "VARIANT LIST"

Dim p As Variant

p = listStr$

Print. TypeName (p) ' Выводит "STRING LIST"

LotusScript классов Class Employee

' определение класса Employee End Class

Dim temp As Employee

Print. TypeName (temp) ' Выводит "EMPLOYEE"

Set hire = New Employee

Print TypeName(hire) ' Выводит "EMPLOYEE"

Dim emps(3) As Employee

Print. TypeName (emps ()) ' Выводит "EMPLOYEE ( )"

© InterTrust Co. Тел. (095) 9567928

234 Язык LotusScript

' Объекты OLE классов

Set obj = CreateObject("Word.Application")

Print TypeName(obj) ' Выводит "OBJECT"

2.8.3. Операторы и функции обработки строковых данных

Оператор Bin Bin[$] ( numExpr)

Возвращает двоичное представление числа в строковом виде. Параметр numExpr-числовое выражение. Если значение выражения numExpr имеет дробную часть, то оно округляется до ближайшего целого значения. Значение, возвращаемое оператором Bin, имеет тип Variant DataType 8 (строка), оператор Bin$ возвращает значение типа String. Возвращаемое значение - число в двоичной системе исчисления. Максимальная длина результата - 32 символа.

Если тип данных выражения numExpr не Integer и не Long, LotusScript производит попытку привести значение выражения к типу Long. Если подобное преобразование невозможно, выдается ошибка («Overflow»).

Пример.



' Выводит "11"

' Выводит "11"

' Выводит "11"

.9) ' Выводит "11" (результат вычисления

' выражения - 2,79 - округляется,

' а затем преобразуется)

Функция Oct

Oct[$] ( numExpr)

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

Oct возвращает значение типа Variant DataType 8 (строка), a Oct$ возвращает значение типа String. Возвращаемое значение содержит только цифры от 0 до 7 включительно и имеет длину 11 символов.

Если тип значения numExpr не Integer или не Long, LotusScript производит попытку преобразовать выражение к типу Long. При невозможности преобразования типа выводится

ошибка («Overflow»).

Пример.

Print Oct$(17) ' Выводит "21"

' Преобразование аргумента из типа Double в тип Long

Print Oct$(17.0) ' Выводит "21"

' Округляет аргумент типа Double, а затем преобразует в Long

Print Oct$(17.3) ' Выводит "21"

1 Результат вычисления - 16.587 - округляется до 17.0 и затем

преобразуется в Long

Print Oct$(17.1 * .97) ' Выводит "21"

© InterTrust Co. Тел. (095) 9567928

Lotus Domino R. 5: @-формулы, LotusScript, встроенные классы LotusScript и Java

235

Оператор LSet

LSet stringVar= stringExpr

Присваивает содержимое строки stringExpr строковой переменной stringVar и выравнивает эту строку по левой границе. Параметр stringVar - имя строковой переменной типа String фиксированной или переменной длины, или типа Variant.

Если длина stringVar превышает длину stringExpr, то происходит выравнивание по левой границе stringExpr в stringVar и дополняет пробелами справа. Если длина stringVar меньше длины stringExpr, то копируется только возможное количество символов из stringExpr в stringVar. Если stringVar содержит числовое значение, то оно преобразуется в строковое, и далее используется длина уже строкового представления. Если переменная stringVar имеет тип Variant, то она не может иметь значение NULL (в этом случае «емкость» приемника была бы неопределена). Попытка заместить значение NULL вызывает ошибку с кодом 94 -«Invalid use of null».

Оператор LSet не может быть использован для операций с переменными типов, определенных пользователем.

Иллюстрация работы оператора LSet.



Пример.

Dim x As Variant

x - "qq" ' Длина x - 2

LSet x = "abc" ' Присвоение двух левых символов

Print x ' Выводит "ab"

LSet x = "с"

' Присвоение символа "с" и дополнение остатка строки пробелами

' т.к. длина х - 2

Print x & "high" ' Выводит "с high"

х == "с" ' Обычное присвоение. Новая длина х - 1

Print х & "high" ' Выводит "chigh"

Dim someV as Variant

Lset someV = "abc"

Print someV ' Выводит "", т.к. размер значение Empty О

someV = Null

Lset someV = "abc" ' Ошибка «Invalid use of null»

© InterTrust Co. Тел. (095) 9567928

236

Язык LotusScript

Оператор RSet

RSet stringVar = stringExpr Присваивает содержимое строки stringExpr строковой переменной stringVar и выравнивает эту строку по правой границе.

Использование данного оператора как бы фиксирует емкость переменной-приемника и заполняет её, начиная с правой стороны. Если длина строки stringVar превышает длину строки stringExpr, LotusScript выравнивает вправо строку stringExpr внутри переменной stringVar и добавляет пробелами недостающие символы слева в stringVar. Если длина stringVar меньше длины строки stringExpr, LotusScript копирует только нужное количество символов из строки stringExpr, взятых от ее левой границы, и присваивает значение этой подстроки переменной stringVar. Если stringVar содержит числовое значение, LotusScript сначала преобразует его к с роковому виду, а уже потом устанавливает длину результата.

Иллюстрация работы оператора Rset:

Длина строкового предст. значения переменной

Длина строкового предст. значения переменной








Переменная -приемник

Строка

Уместившаяся подстрока

Непоместившая ся подстрока

Переменная -приемник

Строка

Дополняющие Значение

пробелы целиком

Пример 1,

Dun positFin As String * 20 ' Строка фиксированной длины 20

RSet positFin$ = "Right" ' "Right" заведомо короче positFin

Print positFin$ ' Выводит " Right"

' Строка "Right" выравнена по правому краю строки positFin и первые

' 15 символов строки positFin являются пробелами

Пример 2.



' Выводит "а"

Строка "q" присвоена переменной х типа Variant и тем самым установила её длину равной 1. Таким образом, только один символ строки "ab", а именно самый левый - "а", записан в переменную х.

Функция Left

Left[S] ( expr , n )

Возвращает подстроку, состоящую из первых n символов преобразованного в строку параметра expr.

© InterTrust Co. Тел. (095) 9567928

Lotus Domino R, 5: @-формулы, LotusScript, встроенные классы LotusScript и Java

237

Параметр expr - числовое выражение или строковое выражение для функции Left; выражение типа Variant или String для функции Left$. Если значение выражения expr является числом, то перед выделением символов 'это число преобразуется в строку. Параметр п - число возвращаемых символов,

Функция Left возвращает значение типа Variant DataType 8 (String), а функция Left$ возвращает значение типа String. Если п = 0, то функция возвращает пустую строку ("")• Если n больше, чем длина исходной строки из expr, функции возвращают всю строку.

Функция Left(Null,l) возвращает значение Null. Функция Left$(Null,l) выдает ошибку с кодом 94 — «Invalid use of null».

Пример.

Print Left$("ABC", 2)

Print Left$("ABC", 0)

Print Left(Null, 2)

Dim someV

someV = Null

Print Left$(someV, 2)

' Выводит "АВ" ' Выводит "" ' Выводит Null

Ошибка "Invalid use of null"

Функция LeftB

Функция LeftB выполняет ту же операцию что и Left. Отличием является то, что LeftB измеряет длину подстроки не в символах, а в байтах. Во внутреннем представлении LotusScript строки кодированы Unicode, где символы кодируются двумя байтами. По этой причине использование функции LeftB может приводить к непредсказуемым результатам.

Вместо LeftB следует использовать либо Left, либо LeftB Р.

Функция LeftBP

LeftBP[$] ( expr , n )

Для указанной строки возвращает подстроку слева из указанного числа байт.

Подсчет байт ведется в кодировке текущей платформы.

expr - числовое выражение или строковое выражение для функции LeftBP; выражение типа Variant или String для функции LeftBP$. Если значение выражения expr является числом, то перед выделением символов это значение преобразуется в строку.

n - длина извлекаемой подстроки в байтах.

Функция LeftBP возвращает значение типа Variant DataType 8 (String), а функция LeftBPS возвращает значение типа String. Если n = 0, функция возвращает пустую строку («»). Если n больше, чем длина исходной строки из expr, функции возвращают всю строку.

Функция LeftBP(Null) возвращает значение Null. Функция LeftBP$(Null) выдает ошибку с кодом 94 - «Invalid use of null».

Функция производит посимвольное выравнивание результата. Это означает, что, если кодировка строки многобайтная и в результат справа попадает не целый код символа, а, например, один байт, то такой символ не включается в результат функции.

Пример.

Print LeftBP$("ABB", 2) Print LeftBP$("ABB", 0)

' Выводит "АБ" ' Выводит ""


© InterTrust Co. Тел. (095) 9567928

238

Язык LotusScript

5 Функция LeftC

LeftC ( expr, n )

Используется только для систем письма в колонку (тайская, малайская, арабская, урду, персидская (фарси), лаоская)!

Из указанной строки извлекает указанное количество колонок слева. Параметр expr - строковое выражение, содержащее колонки символов. Параметр n - число извлекаемых из исходной строки колонок символов.

Если n = 0, функция возвращает пустую строку («»). Если n больше, чем число колонок в исходной строке expr, функции возвращают всю строку.

Функция поддерживает следующие системы письма:

© Функция StrLeft

StrLeft ( stringExpr 1, stringExpr2, [compMethod [, Occurences ]] )

Функция просматривает указанную строку-источник слева направо в поиске подстроки-образца и возвращает подстроку из символов, находящихся слева от найденного образца.

Параметр stringExpr1 - строка, в которой производится поиск и выборка (строка-источник).

Параметр stringExpr2 — строка, вхождение которой отыскивается в строке-источнике (строка-образец).

Параметр compMethod - числовое выражение, задающее правило сравнения строк. Флаг может иметь следующие значения:

compMethod

Способ сравнения

0

С учетом регистра. С учетом «Pitch»

1

Без учета регистра. С учетом «Pitch»

4

С учетом регистра. Без учета «Pitch»

5

Без учета регистра. Без учета «Pitch»

Если аргумент compMethod не указан, то действуют установки оператора Option Compare, если таковой присутствует в текущем модуле. Подробнее о способах сравнения строк см. в описании оператора Option Compare на стр. 163. Использование значения вне этого списка приводит к ошибке с кодом 173 - «Argument out of range».

Параметр Occurences — числовое выражение, задающее необходимое число вхождений строки-образца в строке-источнике, которое должно быть достигнуто для получения результата. Значение по умолчанию - 1.
  1   2   3   4   5   6   7   8   9   ...   24

Похожие:

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconПрактическая работа №11
В excel имеются средства для обработки данных, организованных по принципу баз данных – функции списка, основные операции которых...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconГау «мфц рс(Я)» от 22. 01. 2014 г. №12/1 политика в области обработки...
Республике Саха (Якутия)» (далее – гау «мфц рс(Я)» или Оператор) считает важнейшими своими задачами соблюдение принципов законности,...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconИнструкция по обработке персональных данных без использования средств...
Положения об особенностях обработки персональных данных, осуществляемой без использования средств автоматизации и устанавливает порядок...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconРегламент исполнения государственной функции «Ведение реестра операторов,...
Рриториальных органов, а также порядок взаимодействия Роскомнадзора и его территориальных органов с операторами, осуществляющими...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconСогласовано
Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных данных,...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconПолитика в области обработки и защиты персональных данных в Сельской...
Категории обрабатываемых персональных данных, источники их получения, сроки обработки и хранения. 3

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconУтверждено распоряжением Администрации Комсомольского района
Постановлением Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconМбоу «Конарская сош» общие положения
Постановлением Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconАо до «дюсш «Асамат» Цивильского района чр общие положения
Постановлением Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconПоложение о порядке обработки и защиты персональных данных в администрации...
Ии администрации сельского поселения (Н. П. Свистуновой) довести под роспись до сотрудников администрации сельского поселения, обязанности...

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск