String 部分字符串匹配

String 部分字符串匹配,string,tcl,String,Tcl,希望一位善良的tcl大师能帮助我 我有这个字符串匹配,它的工作,以匹配电子邮件地址 if { [string match "joe.blogs@thisdomain.com" $emailFromAddress] } { set sendAutoReply 0 这非常有效,但是我希望字符串忽略joe.blogs@并且只在thisdomain.com上匹配。 这背后的原因是,我不想自动回复来自某个特定领域的任何人,即thisdomain.com,因为这可能是1000个电

希望一位善良的tcl大师能帮助我

我有这个字符串匹配,它的工作,以匹配电子邮件地址

if { [string match "joe.blogs@thisdomain.com" $emailFromAddress] } {
   set sendAutoReply 0
这非常有效,但是我希望字符串忽略joe.blogs@并且只在thisdomain.com上匹配。 这背后的原因是,我不想自动回复来自某个特定领域的任何人,即thisdomain.com,因为这可能是1000个电子邮件地址(我不知道),我的想法是只匹配域名


有没有想过如何以一种非常简单的方式做到这一点?

在模式中使用通配符而不是显式用户名

if { [string match "*@thisdomain.com" $emailFromAddress] } {
   set sendAutoReply 0
}

字符串匹配
命令支持简单的通配符。因为需要更复杂的匹配,所以不能使用它的任何东西都必须使用
regexp
(或实际的解析器;在Tcllib中有用于生成它们的工具)。@MrJam