如果变量是空的,你怎么看?它可以包含一个"\n"
或多个空格.我目前正在这样做
if {{string trimleft $var} != ""} {
# the variable is not empty
puts $var
}
Run Code Online (Sandbox Code Playgroud)
然而印刷的变量似乎仍然是空的?会trimleft
删除"\n"
吗?有没有更好的方法来检查字符串是否为空?
小智 8
据我所知,检查字符串是否为空只是通过以下方式完成:
if {$myString eq ""} {
puts "string is empty"
}
Run Code Online (Sandbox Code Playgroud)
运行以下内容不应该打印任何内容:
if {" " eq ""} {
puts "1"
} elseif {"\n" eq ""} {
puts "2"
}
Run Code Online (Sandbox Code Playgroud)
我希望我能正确理解你的问题
小智 5
为了回答最初的问题并考虑检查空行,这里是更正的代码示例:
if {[string trim $var] != ""} {
puts $var
}
Run Code Online (Sandbox Code Playgroud)
不指定 ?chars? 修剪将删除被视为空格、制表符、换行符和回车符的空白字符。
小智 1
if {{string trimleft "\n"} eq ""} {
puts "1"
} elseif {"\n" eq ""} {
puts "2"
}
Run Code Online (Sandbox Code Playgroud)
trimleft
不会\n
从价值中删除。 归档时间: |
|
查看次数: |
26354 次 |
最近记录: |