替换的规则: A----->01 B----->02 ... ... Z----->26 例如:字符串"AC159"替换成"0103159" |
大家在讨论中已经看到很多人给了各种各样的方法来求解, 最直观的办法应该是写26条替换规则. 那么我给出PowerShell的解法, 其实很简单:
|
这里我使用了几个技巧:
1. 字符串默认被当作一个整体进行迭代, 这是一个需要特别注意的特性, 但是我们可以通过在字符串对象上调用GetEnumerator方法显示返回一个迭代器, 这样我们就能对字符串中的字符进行迭代了;
2. 我使用了Foreach-Object的完整形式BEGIN, PROCESS, END;
3. 我嵌套使用Foreach-Object, 最外层是对$a中的每一个字符串, 内层的完成对一个字符串的字符进行迭代;
4. 使用了类型转换, 运算符的选择;
5. -f是字符串格式的关键字, 如何使用可以参考MSDN关于System.String类上Format静态方法的说明, 该静态方法对localization支持非常好.