我确定这可能是一个简单的问题,但我卡住了。我需要编写一个小Vim脚本程序,要求用户输入。如果用户输入一个整数,则程序继续。如果他们不这样做,那么程序会循环回来并要求他们重试。如果他们输入'X',程序退出。如何确认用户输入了整数?如何让Vim测试用户输入是否是整数?
2
A
回答
1
您可以使用str2nr()
将字符串转换为数字,并比较输入字符串。 VimL解析器会将字符串转换为数字进行比较,并且str2nr()
将首先强制字符串变成数字格式。
if input == str2nr(input)
echo "input is a number"
endif
3
可以使用type()
功能:
if type(myvar) == type(0)
echo "myvar is a number"
endif
见:h type()
。
4
其他答案已经提供了很好的解决方案;我只想添加更一般的验证以及完整性的正则表达式:
if input =~# '^\d\+$'
echo "input is a number"
endif
相关问题
- 1. 检查用户是否输入整数
- 2. 测试输入值是否为数字
- 3. 测试输入是否为数字
- 4. 如何验证用户输入是否为整数?
- 5. 如何测试浮点数是否是haskell中的整数?
- 6. 如何测试数据是否是整数? (VHDL)
- 7. 如何测试是否输入命令行参数?
- 8. 测试用户是否输入电子邮件格式ASP.NET(VB)
- 9. 测试整数是否为素数
- 10. Python:测试参数是否为整数
- 11. 如何在Go中测试float是否是整数?
- 12. 如何检测用户是否停止在EditText中输入android
- 13. 测试输入的数字是否不是文本 - RUBY
- 14. 如何检查用户是否输入2个数字之间的整数?
- 15. VBScript:检查用户输入是否为整数
- 16. Python:如何让用户输入一个字符串来测试是否等于var
- 17. 如何测试Flask是否使用test_client而不是客户端?
- 18. 检查输入是否为正整数
- 19. 如何测试输入字段是否包含外来字符?
- 20. 如何测试输入字符是否在1-9之间?
- 21. 如何测试两个输入字段是否为空?
- 22. 如何测试函数是否被调用(单元测试角)
- 23. 如何测试双精度是否为整数
- 24. 如何让程序确定输入是否是python中的int?
- 25. 如何检查用户输入是否是某个基地?
- 26. 测试用户是否登录
- 27. 输出测试字符串是否是回文测试
- 28. 的jQuery:输入变量测试是否是DOM元素
- 29. 如何检测给定的数字是否是整数?
- 30. 如何检查输入字符串是否为整数