Copy: различия между версиями

Материал из UoPilot
Перейти к навигации Перейти к поиску
(Новая страница: « == Описание == Copy - позволяет копировать один или несколько символов из строки с указанной...»)
 
 
Строка 5: Строка 5:
 
== Синтаксис ==
 
== Синтаксис ==
 
Привязка к окну: нет.
 
Привязка к окну: нет.
<br>Работа со свернутым окном: да.
+
<br>Работа со свернутым окном: да.
  Copy(&lt;String> &lt;Index> &lt;Count>)
+
  Copy(<String> <Index> <Count>)
где:&lt;br>
+
где:<br>
'''&lt;String>''' - строка, из которой производится копирование&lt;br>
+
'''<String>''' - строка, из которой производится копирование<br>
'''&lt;Index>''' - начальная позиция копирования&lt;br>
+
'''<Index>''' - начальная позиция копирования<br>
'''&lt;Count>''' - количество символов для копирования
+
'''<Count>''' - количество символов для копирования
  
 
== Примеры ==
 
== Примеры ==
Строка 42: Строка 42:
  
 
[[Delete]]
 
[[Delete]]
&lt;br>[[Insert]]
+
<br>[[Insert]]
&lt;br>[[PosEx]]
+
<br>[[PosEx]]
&lt;br>[[Get word]]
+
<br>[[Get word]]
&lt;br>[[Get number]]
+
<br>[[Get number]]
  
 
== История развития ==
 
== История развития ==
  
 
'''2.23'''
 
'''2.23'''
&lt;br>Добавил функцию для работы со строками:
+
<br>Добавил функцию для работы со строками:
 
  Copy(String Index Count)
 
  Copy(String Index Count)
Возвращает подстроку из строки &lt;String>, содержащую &lt;Count> символов, начиная с позиции &lt;Index>.
+
Возвращает подстроку из строки <String>, содержащую <Count> символов, начиная с позиции <Index>.
  
 
[[Категория:Текст]]
 
[[Категория:Текст]]

Текущая версия на 10:20, 28 августа 2019

Описание

Copy - позволяет копировать один или несколько символов из строки с указанной позиции.

Синтаксис

Привязка к окну: нет.
Работа со свернутым окном: да.

Copy(<String> <Index> <Count>)

где:
<String> - строка, из которой производится копирование
<Index> - начальная позиция копирования
<Count> - количество символов для копирования

Примеры

// Пример 1
set $s матрёшка
set $t copy($s 2 3) // $t = атр
// Пример 2
set $s Недавно Вася съел 15 яблок, обжора... // фраза в которой будем искать число яблок
set #еще_яблоки 3 // никто не знал об этих яблоках...
set $ws съел // левое от числа слово
set #wlen size ( $ws ) // длина левого_слова
set $w2 яблок // правое от числа слово

set #n1 posex($ws $s) // позиция в строке с которой начинается левое_слово
set #n2 posex($w2 $s) // позиция в строке с которой начинается правое_слово

if ( #n1 > 0) and ( #n2 > 0 ) // если оба слова были найдены, то будем доставать число...
    set #pos #n1 + #wlen // позиция в строке с которой начинается число
    set #len #n2 - #pos // длина числа в символах
    set $res copy($s #pos #len) // получаем из строки нужную нам подстроку с числом яблок
    set #всего_яблок $res + #еще_яблоки // считаем сколько всего слопано 
 
    msg Дятел: А ВАСЯ СЪЕЛ #всего_яблок ЯБЛОК!!! // бдительность- залог успеха
else
    msg Яблок никто не ел! // неправильные исходные данные часто спасают преступников )
end_if 
end_script

Смотрите также

Delete
Insert
PosEx
Get word
Get number

История развития

2.23
Добавил функцию для работы со строками:

Copy(String Index Count)

Возвращает подстроку из строки <String>, содержащую <Count> символов, начиная с позиции <Index>.