在公式Search中查询"*"的位置,被当作通配符处理,于是想要转义。完全没意识到这是一个Impossible Mission,便去查资料。
可是在B系列的语言中,是不存在转义符的。
=SEARCH("*",B2) //返回"1"
=SEARCH("\*",B2) //返回"#VALUE!"
=SEARCH("[*]",B2) //返回"#VALUE!"
=SEARCH(CHAR(42),B2) //返回"1"
尝试过多种方法后,终于用最笨的方法解决,好在替换是没有通配符的。
=SEARCH("__customized_chr42__",SUBSTITUTE(B2,"*","__customized_chr42__"))
可是回到我的实际应用中,我发现其实我要找的字符非常简单,全部在字符串最后一位。
=MID(B2,SEARCH("__customized_chr42__",SUBSTITUTE(B2,"*","__customized_chr42__"))+1,1)
=RIGHT(B2,1)
处理完这堆数据,突然想起Find来,它是不区分大小写及不支持通配符的。
=FIND("*",B2)
果然是锈逗了。
附自己写的 个税计算表 ,含由缴税额反查。