如何删除字符串中的每个第二个字符?
如何删除字符串中的每个第二个字符?
例如:
3030313535333635 -> 00155365 3030303336313435 -> 00036145 3032323437353530 -> 02247550
字符串总是16个字符长,结果总是8个字符长 – 被删除的字符总是’3′ – 不要问为什么然而 – 我没有想到这个疯狂的源数据。
String input = "3030313535333635"; String result = ""; for(int i = 1; i < 16; i +=2 ) { result += input[i]; }
试试这个从字符串中获取每个其他字符: –
var s = string.Join("", str.Where((ch, index) => (index % 2) != 0));
您可以使用这个着名的类System.Runtime.Remoting.Metadata.W3cXsd2001.SoapHexBinary
🙂
string str = "3030313535333635"; var hex = System.Runtime.Remoting.Metadata.W3cXsd2001.SoapHexBinary.Parse(str); var newstr = Encoding.ASCII.GetString(hex.Value);
使用StringBuilder
创建字符串将节省资源
string input = "3030313535333635"; var sb = new StringBuilder(8); // Specify capacity = 8 for (int i = 1; i < 16; i += 2) { sb.Append(input[i]); } string result = sb.ToString();
Java语言代码
String input= "3030313535333635" String output=""; for(int i=1;i