我需要检查字符串中的字符(单独使用)是字母数字,空格还是特殊字符。无法找到明确的方法。
例如,
include?
所以,我的输出应该是:
I - Alphanumeric t - Alphanumeric " " - Space i - Alphanumeric s - Aplhanumeric " " - Space 5 - Alphanumeric ! - Special Character
答案 0 :(得分:4)
string is
命令可用于查明字符串的所有字符是否是特定字符类的成员,可以告诉它还报告不是成员的第一个字符的索引那个班。
% string is alpha "abc"
1
% string is alpha -failindex ix "abc123"
0
% puts $ix
3
相关课程可能是alpha
,digit
,space
和punct
。此外,alnum
是alpha
和digit
的联合。
答案 1 :(得分:0)
在得到@Donal的好答案之后..如果你想使用TAG中提到的regexp
,你可能会这样做,
set var "Abc Def 8 9"
for {set i 0} {$i < [string length $var]} {incr i} {
set char [string index $var $i]
if {[regexp -all {[a-zA-Z0-9]} $char]} {
puts "$char is Alphanumeric"
} else {
puts "$char is Special Character"
}
}
它将解决你逐一获取字符串的每个字符的目的......并检查它是否是字母数字或特殊字符..