美好的一天,我之前问过这个问题,但我并不特定于我的道歉。我正在使用图片框作为每个单元格进行一个简单的windForms国际象棋游戏。根据规则,如果单元格被敌方目标击中,国王就不能移动。为了实现这个规则,我使用了pictureBox.Tag属性并为它分配一个字符串。如果一件作品以它为目标,我使用pictureBox1.Tag += "D"
D,如Danger。因此,如果两件作品定位它,Tag
将变为"DD"
。我的问题是 - 如何从我的字符串中删除一个'D'
?我可以使用-=
运营商或类似的东西吗?如何从字符串中删除一个字符?
-5
A
回答
0
我认为这将解决您的问题
public void Remove (PictureBox pb){
if (pb.Tag.ToString().Length > 1) {
// Greater than 1 because we need to keep one D in case of DD,
String temp = pb.Tag.ToString();
pb.Tag = temp.Substring(0, temp.Length - 2);
}
else
pb.Tag = "D";
// Tag equals D because if there is only one D, it won't be deleted
}
1
0
只需使用Replace法,用一个空字符串替换你的性格(字符串):
string s = "Daddy comes back";
s = s.Replace("D", string.Empty); // Replace ALL D'
Console.WriteLine(s);
或者,如果你已经知道的人物索引中删除,或者如果你需要删除单个字符,请考虑使用Substring方法。
s = s.Substring(i, i+1); // Remove the character at position i
注意,一个C#string
是不可改变的:在这两种情况下,将返回一个新的字符串实例。
+0
不会删除字符串中的所有'D'吗? – user3552161
+0
是的。使用子字符串只能删除给定位置上的特定字符,请参阅我的编辑 – quantdev
0
您可以使用正则表达式来指定要删除一个角色的只是一个实例:
Regex regex = new Regex(Regex.Escape("D"));
string output = regex.Replace("ABCDDEFG", string.Empty, 1);
1
虽然洁具的方式做自己”重新尝试去做,你真正想要做的是沟渠字符串处理,并使用其他的东西。例如,为这个平方元信息创建一个完整的类。像
public class SquareInfo
{
public int Danger; //the number of pieces that can move to this square.
//... Any other information about the square you want.
}
东西然后,你可以抢标签为:
var myInfo = (SquareInfo)myBox.Tag;
if (myInfo.Danger > 2)
{
//do something
}
等。
相关问题
- 1. 从一个字符串中删除一个子字符串
- 2. 如何从字符串[python]中删除一个字符?
- 3. 如何从字符串中删除动态字符字符串?
- 4. 如何从字符串中删除多个子字符串?
- 5. 从字符串中删除字符串
- 6. 从字符串中删除字符串
- 7. 如何从字符串中删除/删除最后一个字符php
- 8. 如何从SQL中的字符串中删除唯一字符
- 9. 删除一个字符串的字符
- 10. 删除一个字符在字符串
- 11. Python:从第一个数字字符中删除字符串
- 12. 如何从一个字符串中一次删除一个字符?
- 13. 如何从C#字符串中删除一些字符?
- 14. 从字符串中的某个字符中删除字符
- 15. 从字符串中删除N个第一个字符
- 16. 从另一个字符串中删除字符串中的字符的功能
- 17. 如何从某个位置的字符串中删除字符?
- 18. 如何从字符串中删除最后的n个字符?
- 19. 如何从字符串中删除第二个字符?
- 20. 如何从字符串数组中删除任何字符串?
- 21. VB.NET - 从字符串中删除字符
- 22. 从c字符串中删除字符
- 23. 从字符串中删除Unicode字符
- 24. 从字符串中删除字符
- 25. 从Java字符串中删除字符
- 26. 从字符串中删除字符C
- 27. datagridview从字符串中删除'&'字符
- 28. C从字符串中删除字符
- 29. 从字符串中删除字符
- 30. Fortran:从字符串中删除字符
看看SubString方法。 – Transcendent
你是否在这些字符串中保留了大量的元信息,还是仅仅是D?如果它只是D然后做一个=不是+ =。 – stonemetal
我只是在学习编程,我在网上搜索,没有找到我需要的东西。如果我问一个明显的问题,请给我一些答案或至少一个答案的链接。 – user3552161