如果你正在从事这些事情: 1. 制作windows安装包/ 2.使用脚本语言处理属性或者系统变量或者注册表键值/ 3. 其他和windows平台有关的正常字符串不工作的场合(我还没想起来), 那么这篇文章是对你有一定帮助的.
Formatted String按照字面理解很直白的说,就是格式化字符串-对字符串加以[,],{,},/,%,!,#,$,表达特定的含义;
[PropertyName] - []主要用来表示一个属性的值, PropertyName是属性的名字.
1.多个[]复合的解析顺序是由内至外(inside-out)
2.原字符串中含有[时应该使用[/[]替换, 源字符串中含有]时应使用[/]]替换.
3.[%A]表示在当前系统的环境变量表中A的值
{String A}
1. 如果String A中不包含属性标记[], 那么{String A}不做任何转义处理;
2.如果String A中包含任一属性标记[],那么{String A}转义为String A;
[~] - 表示Null字符,最常见的是用来对注册表键值赋空值,在注册表中代表"REG_MULTI_SZ"字符.另外, [~]同样作为前缀和后缀用在系统环境变量表中.
[#filekey] - 文件的全路径.
[!filekey] - 文件的短路径.
[$componentKey] - 组件的安装目录
Note: 应特别注意在书写Xpath的时候,[,]和[/[],[/]]替换.