2011-06-23 27 views
2

這可能是一個快速的方法。但我有這個字符串看起來像這樣:Vbscript - 從逗號字符向右移動字符

Gabriel, Peter 

而且我想這個字符串看起來像這樣:

Peter Gabriel 

我知道的替代和分流功能,但我不當然,我可以如何儘可能簡單地做到這一點,而不會造成太多的困擾?

編輯:我實際上通過一些混亂來修復它。下面的代碼

Dim strDisplayName as string 
    strDisplayName = "Gabriel, Peter" 
    Dim strTemp() As String 
    strTemp = Split(strDisplayName, ",") 
    strTemp(1) = Replace(strTemp(1), " ", "") 
    strDisplayName = strTemp(1) & " " & strTemp(0) 

它可能不是最完美的解決方案,但至少我可以告訴這是怎麼回事:對

+1

請將您的答案作爲答案發布,而不是編輯您的問題。然後接受一個答案(也許是你自己的)來解決這個問題。 –

回答

1

這裏工作方案如下:

Dim YourString As String = "Gabriel, Peter" 

Dim Temp() As String = Split(YourString, ", ", -1, CompareMethod.Binary) 

Dim Result As String = Temp(1) & " " & Temp(0) 

'now Result = "Peter Gabriel" 

注:此解決方案已在Visual Studio 2010中測試完畢。

1

我沒有測試這一點,因爲我在Mac上,但這裏是我如何猜測它會工作

dim fullname as string = "Gabriel, Peter" 

dim order_name as string = fullname.substring(indexof(", ")+1) & " " & fullname.substring(1,indexof(",")) 

msgbox order_name 
0

如果你知道逗號存在:

aParts = split(oldvalue, ",") 
newvalue = trim(aPart(1)) & " " & trim(aPart(0)) 

你也許可以做到它全部在一行上,不需要中間數組(或者不是,我的vbscript有點生疏),但這意味着調用分裂兩次,所以可能效率會降低。

或者不裂,只使用基本的字符串函數:

newvalue = trim(mid(oldvalue, instr(oldvalue,",")+1) & " " & trim(mid(oldvalue, instr(oldvalue,",")-1) 

編輯:我剛纔注意到你標記的問題vb.net以及VBScript中。以上是VBScript中,我知道小vb.net的...

1
Dim strDisplayName As String = "Gabriel, Peter" 
    Dim strTemp() As String = Split(strDisplayName, ",") 
    Array.Reverse(strTemp) 
    Dim PersonName As String = Join(strTemp, " ") 

這應該在VB.Net