全站数据
8 4 2 0 5 8 1

"tokens"是什么意思啊

经济师李有才 | 简单学习,快乐成才!         
问题更新日期:2024-10-21 17:07:57

问题描述

"tokens"是什么意思啊希望能解答下
精选答案
最佳答案

先了解for下的delims的用法。delims=xxx - 指分隔符集。这个替换了空格和跳格键的

默认分隔符集。明白之后再解释tokens.tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代

的 for 本身。这会导致额外变量名称的分配。m-n

格式为一个范围。通过 nth 符号指定 mth。如果

符号字符串中的最后一个字符星号,

那么额外的变量将在最后一个符号解析之后

分配并接受行的保留文本。就是说,一段文字

"a b c d e f g h”我们知道,for命令默认下以空格和跳格键作分隔符。那么,这段东西就给拆成了8个部分。现在,我们需要第6个部分。那么,就这样写:FOR /F

"tokens=6

" %A in (

"a b c d e f g h”) DO ECHO %A那如果要多个呢?只要在tokens里多加点数就是了命令的帮助中说“会导致额外变量名称的分配”就是FOR /F

"tokens=6,7

" %A in (

"a b c d e f g h”) DO ECHO %A那么第7项就要用A的下一个字母B来表示变量。 %i 在 for 语句中显式声明,%j 和 %k 是通过

tokens= 选项隐式声明的。可以通过 tokens= 一行

指定最多 26 个符号,只要不试图声明一个高于字母

"z

" 或

"Z

" 的变量。请记住,FOR 变量是单一字母、分大小写和全局的变量;

而且,不能同时使用超过 52 个。 从这段说明,也可以明白:tokens至多同时取出26段文字FOR /F

"tokens=4-6

" %A in (

"a b c d e f g h”) DO ECHO %A则会取出第4、5、6项分别存入变量%A、%B、%C那如果,我们不按从小到大的顺序排呢?FOR /F

"tokens=4-6,2,1

" %A in (

"a b c d e f g h

") DO ECHO %AFOR命令会自己为我们重排序号,从小到大,然后再取那么编号重复?FOR /F

"tokens=4-6,2,1,5

" %A in (

"a b c d e f g h

") DO ECHO %AFOR会忽略重复的号码。 再看这句话:如果符号字符串中的最后一个字符星号,那么额外的变量将在最后一个符号解析之后分配并接受行的保留文本。什么意思呢?还是举例FOR /F

"tokens=1,2*

" %A in (

"a b c d e f g h

") DO ECHO %A此时1、2部分存入%A、%B。剩下的呢?全部存入了%C,而且连空格一起保留了。就是说n*就是把第n+1项和后面的所有内容(包括分隔符)一起,读入下一个空变量。那么FOR /F

"tokens=1,3,2*

" %A in (

"a b c d e f g h

") DO ECHO %A此时,FOR将再次重排顺序,这条命令等同于那么FOR /F

"tokens=1,2,3*

" %A in (

"a b c d e f g h

") DO ECHO %A基本没了吧

其他回答

下拉选项可以输入data-tokens中的参数而选中相应option的数据

其他回答

tokens是代币的意思,希望可以帮助到你