Описание функции


StringSplit

Разделяет строку на подстроки, в зависимости от заданного разделителя.

StringSplit('string','delimiters'[,flag=0])

Параметры

string Используемая строка.
delimiters Один или более символов используются как разделитель (с учетом регистра).
flag [необязательный] Изменение способа разделения, может быть комбинацией следующих значений:
0 - (по умолчанию), каждый символ в разделителе строки является разделителем.
1 - вся строка разделителя является разделителем.
2 - отключить возвращение количества элементов в первый элемент массива (необходимо использовать UBound(), чтобы получить размер массива).

Возвращаемое значение

Возвращает массив, в котором по умолчанию первый элемент $var_array[0] содержит количество возвращённых строк, остальные элементы ($var_array[1], $var_array[2], и т.д.) содержат разделённые строки. Если flag = 2, то в первый элемент не возвращается количество элементов, а возвращается первый элемент разделённой строки.

Если разделитель в искомой строке не найден, то количество в $var_array[0]=1 и вся строка возвращается в $var_array[1].

Примечания

Если вы используете пустую строку как разделитель '', то каждый символ возвратится в элемент массива.

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

StringSplit() очень полезна как альтернатива StringInStr() и как средство заполнения массива.

Предупреждение, если вы в разделителе используете макро - @CRLF, то фактически используется 2 строчных символа, которые сгенерируют дополнительные пустые элементы в массиве.

Функцию можно подключить через команду exect
Для передачи пустой строки можно воспользоваться ключевым словом Null
Для передачи значения по умолчанию можно воспользоваться ключевым словом Default

См. также

StringRegExp, StringToASCIIArray, StringMid, StringInStr

Примеры:
 Как создать кнопку?


exect=$var_a1=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2)||$var_n1='размер~~массива~~'&UBound($var_a1) GLOBALEXECT<a> ;; пример создания массива и получение его размера

exect=$var_aa=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1) GLOBALEXECT<a> bufsr=##$var_aa[1]~~$var_aa[5] ;; пример создания массива и передача ячеек другим командам

exect=$var_a1=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1)||$var_a2=$var_a1 GLOBALEXECT<a> ;; пример создания массива в переменной $var_a1 и копирование его в переменную $var_a2

exect=$var_a1=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1)||$var_a2=StringSplit('1b,2b,3b,4b,5b,6b,7b,8b,9b',',',2) GLOBALEXECT<$var_a1> GLOBALEXECT<$var_a2> GLOBALEXECT<a> ;; пример создания двух массивов, отдельный просмотр каждого

exect=$var_a1=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1) GLOBALEXECT<$var_a1> exect=$var_a2=StringSplit('1b,2b,3b,4b,5b,6b,7b,8b,9b',',',2)||$var_a1[6]=$var_a2[2] GLOBALEXECT<$var_a1> GLOBALEXECT<$var_a2> GLOBALEXECT<a> ;; пример создания двух массивов, изменение ячейки и просмотр каждого

exect=$var_a1=StringSplit('%P%N','\',1) GLOBALEXECT<a> ;; пример создания массива из элементов пути

exect=$var_a1=StringSplit(FileRead('%P%N'),'~~',1) GLOBALEXECT<a> ;; пример разбивки текстового файла в массив по пробелам

exect=$var_aa=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2)||_ArrayDisplay($var_aa)||_ArrayAdd($var_aa,'88888')||_ArrayDisplay($var_aa) ;; пример создания массива и добавление в конец значения

exect=$var_aa=StringSplit('1a|2a|3a|4a','|',2)||_ArrayDisplay($var_aa)||$var_a2=StringSplit('5b|6b|7b|8b|9b','|',2)||_ArrayDisplay($var_a2)||_ArrayConcatenate($var_aa,$var_a2)||__ArrayDisplay($var_aa) ;; пример создания 2-х массивов и присоединение 2-го к первому

exect=$var_aa=StringSplit('1a|2a|3a|4a','|',2)||_ArrayDisplay($var_aa)||_ArrayDelete($var_aa,2)||_ArrayDisplay($var_aa) ;; пример создания массива и удаление заданной ячейки

exect=$var_aa=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2)||_ArrayDisplay($var_aa)||$var_a2=_ArrayExtract($var_aa,2,5)||_ArrayDisplay($var_a2) ;; пример создания массива $var_a2 из заданных ячеек массива $var_aa

exect=$var_aa=StringSplit('aa|bb|aa|cc|dd|aa|bb|ee|aa','|',2)||_ArrayDisplay($var_aa)||$var_a2=_ArrayFindAll($var_aa,'aa')||_ArrayDisplay($var_a2) ;; пример создания массива $var_a2 из индексов ячеек массива $var_aa в которых есть 'aa'

exect=$var_aa=StringSplit('0;1;2;3;4;5;6;7;8;9',';')||_ArrayDisplay($var_aa)||_ArrayInsert($var_aa,2,'Вставлена~~2-я~~ячейка')||_ArrayDisplay($var_aa) ;; пример вставки в массив $var_aa значения в заданную ячейку

exect=$var_aa=StringSplit('0;1;2;3;4;5;6;7;8;9',';')||_ArrayDisplay($var_aa)||$var_an=StringSplit('3|5|9','|')||_ArrayDisplay($var_an)||_ArrayInsert($var_aa,$var_an,'Вставлена~~3-я~~ячейка|5-я|9-я')||_ArrayDisplay($var_aa) ;; пример вставки в массив $var_aa значений в заданные ячейки из массива $var_an

exect=$var_aa=StringSplit('0;1;2;3;4;5;6;7;8;9',';')||_ArrayDisplay($var_an)||_ArrayInsert($var_aa,'3;5;9','Вставлена~~3-я~~ячейка|5-я|9-я')||_ArrayDisplay($var_aa) ;; пример вставки в массив $var_aa значений в заданные ячейки

exect=$var_aa=StringSplit('4|2|06|8|12|5','|')||_ArrayDisplay($var_aa) exect=$var_i1=_ArrayMax($var_aa,0,1)||$var_i2=_ArrayMax($var_aa,1,1) GLOBALEXECT<a> ;; пример возвращения наибольшего значения, содержащегося в массиве

exect=$var_aa=StringSplit('4,2,06,8,12,5',',')||_ArrayDisplay($var_aa) exect=$var_i1=_ArrayMaxIndex($var_aa,0,1)||$var_i2=_ArrayMaxIndex($var_aa,1,1) GLOBALEXECT<a> ;; пример возвращения индекса ячейки, в которой содержится наибольшее значение массива

exect=$var_aa=StringSplit('4,2,06,8,12,5',',')||_ArrayDisplay($var_aa) exect=$var_i1=_ArrayMin($var_aa,0,1)||$var_i2=_ArrayMin($var_aa,1,1) GLOBALEXECT<a> ;; пример возвращения наименьшего значения, содержащегося в массиве

exect=$var_aa=StringSplit('4,2,06,8,12,5',',')||_ArrayDisplay($var_aa) exect=$var_i1=_ArrayMinIndex($var_aa,0,1)||$var_i2=_ArrayMinIndex($var_aa,1,1) GLOBALEXECT<a> ;; пример возвращения индекса ячейки, в которой содержится наименьшее значение массива

exect=$var_aa=StringSplit('1|2|3|4','|',2)||$var_ap=_ArrayPermute($var_aa,'-')||_ArrayDisplay($var_ap) ;; пример возвращения массива $var_ap перестановок всех элементов указанного массива $var_aa

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD','|',2)||_ArrayDisplay($var_aa)||$var_s1=_ArrayPop($var_aa)||MsgBox(4096,'Результат','$var_s1')||_ArrayDisplay($var_aa) ;; пример возвращения последнего элемента массива $var_aa, одновременно удаляя его из массива

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD','|',2)||_ArrayDisplay($var_aa)||_ArrayPush($var_aa,'EEE')||_ArrayDisplay($var_aa)||_ArrayPush($var_aa,'FFF')||_ArrayDisplay($var_aa) ;; пример добавления нового элемента в конец массива, смещая остальные вверх

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD','|',2)||_ArrayDisplay($var_aa)||_ArrayPush($var_aa,'EEE',1)||_ArrayDisplay($var_aa)||_ArrayPush($var_aa,'FFF',1)||_ArrayDisplay($var_aa) ;; пример добавления нового элемента в начало массива, смещая остальные вниз

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD|EEE|FFF','|',2)||_ArrayDisplay($var_aa)||_ArrayReverse($var_aa)||_ArrayDisplay($var_aa)||_ArrayReverse($var_aa)||_ArrayDisplay($var_aa) ;; пример изменения порядка следования элементов массива

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD|EEE|FFF','|',2)||_ArrayDisplay($var_aa)||$var_ii=_ArraySearch($var_aa,'DDD')||MsgBox(4096,'Результат','$var_ii') ;; пример поиска индекса ячейки, в которой находится фраза 'DDD'

exect=$var_aa=StringSplit('0;1;2;3;4;5;6;7;8;9',';',2)||_ArrayDisplay($var_aa)||_ArraySort($var_aa,1)||_ArrayDisplay($var_aa)||_ArraySort($var_aa)||_ArrayDisplay($var_aa) ;; пример сортировки массива

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD|EEE|FFF','|',2)||_ArrayDisplay($var_aa)||_ArraySwap($var_aa,2,4)||_ArrayDisplay($var_aa)||_ArraySwap($var_aa,1,5)||_ArrayDisplay($var_aa) ;; пример замены местами две ячейки массива

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD|EEE|FFF','|',2)||_ArrayDisplay($var_aa)||_ArrayToClip($var_aa,'~~-~~',1,5) ;; пример записи элементов массива в буфер обмена

exect=$var_aa=StringSplit('AAA|BBB|CCC|DDD|EEE|FFF','|',2)||_ArrayDisplay($var_aa)||$var_ss=_ArrayToString($var_aa,@TAB,1,5)||MsgBox(4096+64,'Результат','$var_ss') ;; пример объединение ячеек массива в одну строку, разделяя @TAB

exect=$var_aa=StringSplit('AAA-|BBB-|CCC-|DDD-|EEE-|FFF-','|',2)||_ArrayDisplay($var_aa)||_ArrayTrim($var_aa,1,1,1,3)||_ArrayDisplay($var_aa) ;; пример удаления указанного количества символов из заданных элементов массива

exect=$var_aa=StringSplit('1|2|3|4|5|6|7|8|9|10','|',2)||_ArrayDisplay($var_aa)||_ArrayRandomize($var_aa)||_ArrayDisplay($var_aa) ;; пример распределения элементов массива случайным образом

exect=$var_aa=StringSplit('1|2|3|4|5|6|7|8|9|10','|',1)||_ArrayDisplay($var_aa)||_ArrayRandomize($var_aa,1)||_ArrayDisplay($var_aa) ;; пример распределения элементов массива случайным образом со 2-го элемента

exect=$var_aa=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1) GLOBALEXECT<$var_aa> <FOR> 1 <TO> 5 exect=$var_s=$var_aa[:INDEX:] exect=_ViewValues('$var_s') <NEXT> ;; пример создания массива и передача элементов в массиве

exect=$var_aa=StringSplit(_StringDuplication('blue-red|red-blue|',10),'|',1) GLOBALEXECT<$var_aa> <FOR> 1 <TO> 5 exect=$var_s=$var_aa[:INDEX:] exect=_ViewValues('$var_s') <NEXT> ;; пример создания массива из дублированной строки и передача элементов в массиве

exect=$var_aa=StringSplit('aa|bb|aa|cc|dd|aa|bb|ee|aa','|',2)||_ArrayDisplay($var_aa)||$var_a2=_ArrayUnique($var_aa)||_ArrayDisplay($var_a2) ;; пример создания массива $var_a2 из массива $var_aa без повторов элементов

exect=$var_aa=StringSplit('aa|bb|aa|cc|dd|aa|bb|ee|aa','|',2)||_ArrayDisplay($var_aa)||_ReDim($var_aa,20)||_ArrayDisplay($var_aa)||_ReDim($var_aa,5)||_ArrayDisplay($var_aa) ;; пример изменения размера массива

exect=$var_aa=StringSplit('aa|bb|aa|cc|dd|aa|bb|ee|aa','|',2)||$var_i=IsArray(Eval('var_aa'))||_ViewValues($var_i)||$var_aa='Привет'||$var_i=IsArray(Eval('var_aa'))||_ViewValues($var_i) ;; пример проверки является переменная массивом или нет

exect=$var_aa=StringSplit('1|2|3|4','|',2)||$var_i=IsString(Eval('var_aa'))||_ViewValues($var_i)||$var_aa='Привет'||$var_i=IsString(Eval('var_aa'))||_ViewValues($var_i) ;; пример проверки является переменная строковым типом данных

exect=$var_x=StringSplit('1|2|3|4','|',2)||_ViewValues(VarGetType(Eval('var_x')),'Тип~~данных~~переменной~~$var_x') ;; определение типа данных

exect=$var_s=##[input=BOX72]||$var_ap=_ArrayPermute(StringSplit('$var_s','"''"',2))||_ViewValues($var_ap) ;; анаграмма введённого слова в диалоге в виде массива. (В анаграмму входят слова, с перестановкой всех букв заданного слова без повторов букв и точной длины)
exect=$var_s=##[input=BOX72]||$var_ap=_ArrayPermute(StringSplit('$var_s','"''"',2))||_ViewValues($var_ap)||$var_ss=_ArrayToString($var_ap,@CRLF,1)||_ViewValues('$var_ss ')||FileWrite('c:\Test\anagam.txt','$var_ss') ;; создание анаграммы в введённого слова в диалоге, просмотр результата на каждом этапе и сохранение в файл anagam.txt (В анаграмму входят слова, с перестановкой всех букв заданного слова без повторов букв и точной длины)
exect=$var_s=##[input=BOX72]||FileWrite('c:\Test\anagam.txt',_ArrayToString(_ArrayPermute(StringSplit('$var_s','"''"',2)),@CRLF,1)) ;; создание анаграммы в введённого слова в диалоге и сохранение в файл anagam.txt

exect=$var_s=##[input=BOX72]||FileWrite('c:\Test\anagam_'&'$var_s'&'.txt',_ArrayToString(_ArrayPermute(StringSplit('$var_s','"''"',2)),@CRLF,1)) ;; создание анаграммы в введённого слова в диалоге и сохранение в файл anagam_слово.txt

imgpr=1 exect=$var_s=ClipGet()||$var_sz=(_ArrayToString(_ArrayPermute(StringSplit('$var_s','"''"',2)),'~~',1)) bufsr=##$var_sz||formt<sps36> ;; записать в буфер обмена анаграмму слова, находящегося в буфере обмена и разбить по 10 слов в строке. Если в слове более 10 символов, то для создание анаграммы понадобится длительное время

imgpr=1 exect=$var_sz=(_ArrayToString(_ArrayPermute(StringSplit(ClipGet(),'"''"',2)),'~~',1)) bufsr=##$var_sz||formt<sps36> ;; записать в буфер обмена анаграмму слова, находящегося в буфере обмена и разбить по 10 слов в строке. Если в слове более 10 символов, то для создание анаграммы понадобится длительное время
exect=$var_s=##[input=BOX72]||$var_ap=_ArrayPermute(StringSplit('$var_s','"''"',2),'"''"',1)||_ViewValues($var_ap) ;; возвращает массив перестановок букв введённого слова, не добавляя количество в 1-й элемент

imgpr=1 exect=$var_s=##[input=BOX72]||$var_ap=_ArrayPermute(StringSplit('$var_s','"''"',2),'"''"',1)||$var_af=FileReadToArray('C:\dictionary.txt')||$var_ae=_ArrayDublElem($var_ ap,$var_af,1)||$var_s=_ArrayToString($var_ae,@CRLF) bufsr=##$var_s ;; отправить в буфер обмена все слова анаграммы введённого в диалоге слова, которые входят в состав словаря dictionary.txt (В список входят слова, с перестановкой всех букв заданного слова без повторов букв и точной длины)
exect=$var_aa=StringSplit('AA|BB|CC|DD|EE|','|',1) <FOR> 1 <TO> 10 exect=$var_sc=Mod(:INDEX:,5)||$var_sc=$var_sc=0?5:$var_sc||$var_sc=$var_aa[$var_sc]||_ViewValues('$var_sc') <NEXT> ;; пример поочерёдного использования значений массива $var_aa в цикле

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|1||upd<1> ;; записать все ячейки массива var_a в файл, в активную панель именем List.txt + обновить активную панель

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|1||1,9||upd<1> ;; записать 1-ю и 9-ю ячейки массива var_a в файл, в активную панель именем List.txt + обновить активную панель

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|1||9,1||upd<1> ;; записать 1-ю и 9-ю ячейки массива var_a в файл, в активную панель именем List.txt + обновить активную панель

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%p[info=s47].txt"|1||9,1||upd<1> ;; записать 1-ю и 9-ю ячейки массива var_a в файл, в активную панель именем системного времени + обновить активную панель

exect=$var_handle=WinGetHandle('[CLASS:TTOTAL_CMD]')||$var_aclass=StringSplit(WinGetClassList(Eval('var_handle')),@LF)||_ViewValues($var_aclass) ;; возвращает массив всех классов элементов Total Commander

exect=$var_aclass=StringSplit(WinGetClassList('[CLASS:TTOTAL_CMD]'),@LF)||_ViewValues($var_aclass) ;; возвращает массив всех классов элементов Total Commander

exect=$var_a=StringSplit('%%COMMANDER_PATH%%\Bar\000_TCIMG_Test.bar|%%COMMANDER_PATH%%\Bar\084_AU3.bar|%%COMMANDER_PATH%%\Bar\000_TCIMG_Test_Exe.bar','|')||$var_si=EnvGet('COMMANDER_PATH')&'\WinButtonBar.ini'||$var_sb=IniRead('$var_si','Buttonbar','Buttonbar',Null)||$var_i=Number(_ArraySearch($var_a,'$var_sb')+1)||$var_i=($var_i>3~~Or~~$var_i=0)?1:$var_i||IniWrite('$var_si','Buttonbar','Buttonbar','$var_a[$var_i]')||IniWrite('$var_si','Buttonbar','Buttonbar',Execute('$var_a[$var_i]')) ;; записать один из 3-х заданных путей .bar по кругу в WinButtonBar.ini в секцию [Buttonbar]

exect=$var_a=StringSplit(StringReplace('??%%COMMANDER_PATH%%\TCIMG.exe?~~?openup??|??%%COMMANDER_PATH%%\Utilities\TotalCom\ChoiceEditor\ChoiceEditor.exe??','?',Chr(34)),'|')||$var_sc=EnvGet('COMMANDER_INI')||$var_sp=IniRead('$var_sc','Configuration','Editor',Null)||$var_is=StringInStr('$var_sp','TCIMG')?2:1||IniWrite('$var_sc','Configuration','Editor',$var_a[$var_is]) rstart ;; переключение программы просмотра по F4 с перезагрузкой

exect=$var_ac=StringRegExp(ClipGet()&@CR&@CR,'(?m)^([^\r\n]*)',3)||$var_ab=StringSplit('TOTALCMD#BAR#DATA|%%COMMANDER_PATH%%\TCIMG.exe|#|Wcmicons.dll,0|','|',2)||$var_ab[2]=$var_ac[0]||$var_ab[4]=$var_ac[1]||_ArrayToClip($var_ab,@CRLF) ;; из 2-х строк в буфере обмена (команда и описание) создать кнопку TCIMG для Total Commander и записать в буфер обмена

exect=$var_an=##[input=BOX84]||$var_a1=StringSplit('a|b|c|','|',1)||ClipPut('$var_a1[$var_an]') ;; пример записи в буфер обмена заданной ячейки массива

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|2|@CRLF|1||upd<1> ;; записать (дописать в конец, если List.txt существует) все ячейки массива var_a в файл, в активную панель именем List.txt + обновить активную панель

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|3|@CRLF|0||upd<1> ;; записать (дописать в начало, если List.txt существует) все ячейки массива var_a в файл, в активную панель именем List.txt + обновить активную панель

exect=$var_a=StringSplit('1a|'&'|3a|4a|5a|6a|7a|8a|9a','|',2) GLOBALEXECT<a> exect=$var_name='GLOBALEXECT<2>'=''''?'*':'имя'||_ViewValues('$var_name') ;; пример проверки пустой ячейки

exect=$var_a=StringSplit(ClipGet(),Null,2)||_ViewValues($var_a) ;; пример разбития содержимого буфера обмена посимвольно

exect=$var_a=StringSplit(ClipGet(),Null,2)||$var_a=_ArrayUnique($var_a)||_ViewValues($var_a) ;; пример разбития содержимого буфера обмена посимвольно и удаления дубликатов

exect=$var_a=StringSplit(ClipGet(),Null,2)||$var_a=_ArrayUnique($var_a) asave=var_a||"%pListSym.txt"||upd<1>||all|| ;; записать в файл ListSym.txt в активную панель уникальные символы из содержимого буфера обмена

exect=$var_a=StringSplit(FileRead('%P%N'),Null,2)||$var_a=_ArrayUnique($var_a) asave=var_a||"%P%O_sym.%E"||upd<1>||all|| ;; записать в именной файл с приставкой _sym уникальные символы содержимого файла под курсором

exect=$var_s=FileRead('%P%N')||$var_s=StringReplace('$var_s',@CRLF,Null)||$var_s=StringReplace('$var_s','~~',Null)||$var_a=StringSplit('$var_s',Null,2)||$var_a=_ArrayUnique($var_a)||_ArraySort($var_a,0,1) asave=var_a||"%P%O_sym.%E"||upd<1>||all||||code<1> ;; записать в именной файл с приставкой _sym уникальные символы содержимого файла под курсором в кодировке UTF-16 LE 1200, предварительно удалив переносы строк и пробелы

exect=$var_a=StringSplit('F|G|N|B|V|Y|F|A|Z','|',2) asave=var_a||"%pList.txt"|1||formt<1,3>||upd<1> ;; записать все ячейки массива var_a в файл, в активную панель именем List.txt, предварительно удалив дубликаты и отсортировав по возрастанию + обновить активную панель

exect=$var_a=StringSplit(FileRead('%P%N'),'</p><p>',1)||_ViewValues($var_a) ;; разбить текстовый файл под курсором по фразе "</p><p>"

exect=$var_a=StringSplit('F|G|N|B|V|Y|F|A|Z','|',2) asave=var_a||"%pList.txt"|1||formt<1,3>||upd<1> GLOBALASAVE<a> ;; записать все ячейки массива var_a в файл, в активную панель именем List.txt, предварительно удалив дубликаты и отсортировав по возрастанию + обновить активную панель и получить путь созданного файла

exect=$var_a=StringSplit(ClipGet(),@CR,2)||_ViewValues($var_a) ;; построчный просмотр буфера обмена в таблице

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|1||xline<^^---;;$$===>||upd<1> ;; записать все ячейки массива var_a в файл, в активную панель именем List.txt, в начало каждой строки добавить "---", в конец - "==="

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||"%pList.txt"|1||xline<^^enum[1|1|1]~~;;$$===>||upd<1> ;; записать все ячейки массива var_a в файл, в активную панель именем List.txt, в начало каждой строки добавить нумерацию, в конец - "==="

exect=$var_a=StringSplit('.txt|.jpg|.au3|.png|.chm','|',1)||_ViewValues($var_a,'Просмотр~~массива:ICON|e:') ;; просмотр массива (значки пунктов в таблице присваиваются относительно системной ассоциации типа файла)
exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1)||_ViewValues($var_a,'Просмотр~~массива:ICON|z|0|iA_2:') ;; просмотр массива с возможностью выбора пунктов в чекбоксе (в таблице настройки значков берутся из секции [InfoList] из ключа "iA_2")

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',2) asave=var_a||zebr<1|2|1>||"%pList.txt"|1||upd<1> ;; записать ячейки через одну массива var_a в файл, в активную панель именем List.txt + обновить активную панель

exect=$var_a=StringSplit('1a|2a|3a|4a|5a|6a|7a|8a|9a','|',1)||_ViewValues($var_a,'Просмотр~~массива:CHECKBOX:') ;; просмотр массива с возможностью выбора пунктов в чекбоксе

exect=$var_aa=StringSplit(_StringDuplication('maroon-black|purple-MidnightBlue|DeepPink4-NavyBlue|navy-DarkRed|cyan3-DarkOrange3|',2),'|',1)||_ViewValues($var_aa) tends=$var_aa!!-1 GLOBALTENDS<a> ;; пример дублирования строки, разбивка её в массив и вывод в массивы

exect=$var_sp=_PathFull('$f202\Puzzle.bmp')||$var_nw=1200||$var_nh=900 exect=$var_wh=StringSplit('<info=i3$var_sp//>','x') exect=$var_iw=Ceiling($var_nw/$var_wh[1])||$var_iw=Number($var_iw)||$var_ih=Ceiling($var_nh/$var_wh[2])||$var_ih=Number($var_ih) sends=#??-6^||#K$var_iw*$var_ih!!$var_sp^ imgnz=$GLOBALSENDS||"%t"//0||$var_iw,$var_ih||upd<3> ;; размножить небольшое изображение по ширине и по вертикали под минимальный заданный размер 1200х900, создав в другой панели изображение именем файла
exect=$var_sp=_PathFull('$f202\Puzzle.bmp')||$var_nw=1200||$var_nh=900 exect=$var_wh=StringSplit('<info=i3$var_sp//>','x') exect=$var_iw=Ceiling($var_nw/$var_wh[1])||$var_iw=Number($var_iw)||$var_ih=Ceiling($var_nh/$var_wh[2])||$var_ih=Number($var_ih) sends=#??-6^||#K$var_iw*$var_ih!!$var_sp^ imgnz=$GLOBALSENDS||"%t"//0||$var_iw,$var_ih imgcf=GLOBALIMGNZ<1>||"%t"//1||pruning<0,0,@H-900,@W-1200>||upd<3> ;; размножить небольшое изображение по ширине и по вертикали под минимальный заданный размер 1200х900 + обрезать до заданного размера, создав в другой панели изображение именем файла
exect=$var_sp=_PathFull('$f202\Puzzle.bmp')||$var_nw=1202||$var_nh=902 exect=$var_wh=StringSplit('<info=i3$var_sp//>','x') exect=$var_iw=Ceiling($var_nw/$var_wh[1])||$var_iw=Number($var_iw)||$var_ih=Ceiling($var_nh/$var_wh[2])||$var_ih=Number($var_ih) sends=#??-6^||#K$var_iw*$var_ih!!$var_sp^ imgnz=$GLOBALSENDS||"%p"//0||$var_iw,$var_ih||framewh<FF0000|2|2> imgcf=GLOBALIMGNZ<1>||"%p"//1||pruning<0,0,@H-902,@W-1202>||upd<1> ;; размножить небольшое изображение Puzzle.bmp по ширине и по вертикали с красной рамкой под минимальный заданный размер 1202х902 + обрезать до заданного размера, создав в другой панели изображение именем файла
exect=$var_a=StringSplit('%P%N','\')||_ViewValues($var_a) ;; разбить путь файла под курсором по слешу

exect=$var_i=StringSplit('%P%N','\')[0]-1||_ViewValues($var_i) ;; получить уровень вложенности пути под курсором

exect=$var_a=StringSplit('1|2|3|4|5|6|7|8|9','|',1)||_ViewValues($var_a)||$var_a[2]+=500||_ViewValues($var_a)||$var_a[3]-=10||_ViewValues($var_a)||$var_a[4]*=15||_ViewValues($var_a)||$var_a[5]/=2||_ViewValues($var_a)||$var_a[6]&=100||_ViewValues($var_a) ;; пример присвоения данных к ячейке существующего 1D массива

$GLOBALXXXXX=>StringSplit('123456789','') GLOBALXXXXX<a> ;; получить массив, разбив строку по заданному разделителю

$GLOBALXXXXX=>StringSplit('%P%N','\') GLOBALXXXXX<a> ;; получить массив, разбив путь объекта под курсором по слешу "\"

$GLOBALXXXXX=>StringSplit('%P%N|%E|"%O"|%N','|') GLOBALXXXXX<a> ;; получить массив, записав путь, расширение, имя объекта под курсором

$GLOBALXXXXX=>StringSplit(StringTrimRight(FileRead('%WL'),2),@CRLF,1) GLOBALXXXXX<a> ;; получить список выделенных объектов

$GLOBALXXXXX=>StringSplit(FileRead('%P%N'),@CRLF,1) GLOBALXXXXX<a> ;; получить массив, разбив построчно текстовый файл под курсором

exect=MsgBox(4096+64,'Результат','Заданная~~фраза~~встречается~~в~~файле~~'&(StringSplit(FileRead('%P%N'),'привет',1)[0]-1)&'~~раз(а)') ;; получить количество раз встречающейся фразы в файле под курсором

exect=MsgBox(4096+64,'Результат','Фраза~~из~~буфера~~обмена~~встречается~~в~~файле~~'&(StringSplit(FileRead('%P%N'),ClipGet(),1)[0]-1)&'~~раз(а)') ;; получить количество раз встречающейся фразы из буфера обмена в файле под курсором


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