我正在尝试拆分字符串39 -562 -18
,它们分别代表 XAxis、YAxis 和 ZAxis。如何将它们拆分为单独的字符串?
问问题
126 次
4 回答
3
使用Split
. " "c
表示空格字符。
Dim coordinates As String = "39 -562 -18"
Dim splitCoordinates As String() = coordinates.Split(" "c)
Dim xcoordinate As String = splitCoordinates(0)
Dim ycoordinate As String = splitCoordinates(1)
Dim zcoordinate As String = splitCoordinates(2)
于 2013-11-01T01:29:04.133 回答
1
你也可以这样做:
Private Sub Button_Click(sender As Object, e As RoutedEventArgs)
Dim axis = New Axis(" 39 -562 -18")
MessageBox.Show(axis.XAxis)
MessageBox.Show(axis.YAxis)
MessageBox.Show(axis.ZAxis)
End Sub
这是Axis 类的代码
''' <summary>
''' Axis string Parser Class
''' </summary>
Public Class Axis
Public XAxis
Public YAxis
Public ZAxis
''' <summary>
''' String containing coordinates like " 39 -562 -18"
''' </summary>
Public Sub New(coords As String)
Dim axis = coords.Trim().Split(" ")
XAxis = Convert.ToSingle(axis(0))
YAxis = Convert.ToSingle(axis(1))
ZAxis = Convert.ToSingle(axis(2))
End Sub
End Class
于 2013-11-01T01:42:26.653 回答
0
您可以使用拆分功能
Dim coords = " 39 -562 -18"
Dim axis = coords.Trim().Split(" ")
Dim XAxis = Convert.ToSingle(axis(0))
Dim YAxis = Convert.ToSingle(axis(1))
Dim ZAxis = Convert.ToSingle(axis(2))
于 2013-11-01T01:30:47.190 回答
0
警告我的答案是 AC# 版本不是 VB.NET:
我发现这很有用,所以我也给自己做了一个 C# 版本。不确定我的代码有多好,我是新手,但希望这可以为这个问题增加价值。
char[] delimiter = { ' ' };
string text = "39 -562 -18";
string[] words = text.Split(delimiter);
string xcoord = words[0], ycoord = words[1], zcoord = words[2];
ViewBag.Message = "Xcoord: " + xcoord + " Ycoord: " + ycoord + " Zcoord: " + zcoord ;
如果我们不知道分隔值的分隔符怎么办?
好吧,只需添加更多分隔符:
char[] delimiter = { ' ', ',', '.', ':', '\t' };
string text = "39,-562:-18";
string[] words = text.Split(delimiter);
string xcoord = words[0], ycoord = words[1], zcoord = words[2];
ViewBag.Message = "Xcoord: " + xcoord + " Ycoord: " + ycoord + " Zcoord: " + zcoord ;
希望这可以帮助任何遇到这个线程的人,就像,该死的,我希望我知道如何在 C# 中做到这一点......哈哈
所以我只是将 ViewBag 用于测试目的,但没有最后一行 viewBag 。xcoord、ycoord和zcoord应该保存各自的值。
于 2013-11-01T02:02:00.160 回答