我试图从inputdialog读取输入并将它们放在printf()命令中。
体育专业。 inputdialog变量:
b = "this is my number list %d and %02f"
1)
首先,我不知道有多少"%"物品有" b"。
我想通过计算所有字符并删除所有"%"来计算它们。项目和计算差异(=#nr。"%"项目):
let totlength = strlen(b)
let tempsubst = strlen(substitute(b, '%\ze\S', "","g"))
let NrPercentages = totlengte - tempsubst
我无法找出正确的正则表达式来替换所有不是'%\ ze \ S' (否定的方式)
任何人都可以帮助我吗?
2)
如果我知道"%"来自inputdialog字段的项目我可以创建一个特定范围的printf()" i"
let nrOfi = 'i'
if NrPercentages > 0
let nrOfi = nrOfi.repeat(',i', NrPercentages-1)
endif
for i in range(1,10,2)
put=printf(''.b.'',eval(nrOfi))
endfor
这会产生错误.printf()的参数不足
我错了什么?
答案 0 :(得分:1)
首先,您正在寻找:
let tempsubst = strlen(substitute(b, '[^%]', "","g"))