我仍然被认为是编程的初学者。我正在创建一个简单的程序来创建"颠倒"样式文本,但我遇到了一个我无法解决的问题。
我检查一个文本框并用String.Replace替换某些字符。但是这里有一个例子:
Input = Input.Replace("d", "p") 'Upside down d
....
Input = Input.Replace("p", "d") 'Upside down p
让所有人再次转向"然后再回到" d" s。还有另一种方法可以同时执行此操作吗?
我很感激答案。感谢。
答案 0 :(得分:2)
逐个迭代字符,在String
或StringBuilder
中构建新的StringBuffer
,不要更改原来的String
引用
编辑 - 示例代码
这是一个示例代码,我不记得VB语法,但我认为以下是正确的:
Dim text As String = "Hello World"
Dim SB as new StringBuilder()
For Each c As Char in text
If c = "a" Then SB.Append("ɐ")
If c = "A" Then SB.Append("∀")
' ...
' ...
' The rest of your cases the same way
' ...
Next
text = StrReverse(SB.ToString())
答案 1 :(得分:0)
最快(也是最脏的)方法是将“d”替换为“#”等中间字符,然后在函数末尾用“p”替换“#”
编辑:“迭代每个角色”实际上是一个更清洁的解决方案