Strings.Replace 方法的注意事項
Strings.Replace 方法是用在字串取代常用方法,常用的呼叫方式如下
可是最近發現一個問題,就是當原字串為 String.Empty (空字串) 時,其傳回值會為 Nothing。
如下程式碼會發生「參考的物件具有 'Nothing' 的值」的錯誤訊息。因為原字串為空字串,透過 Strings.Replace 方法會傳回 Nothing,所以會造成這個錯誤。
所以在使用 Strings.Replace 方法要特別注意這點,防止發生異常的錯誤。而我的作法就是撰寫另一個 StrReplace 方法來取代 Strings.Replace 方法,防止這類錯誤。
''' 字串取代。
''' </summary>
''' <param name="Expression">原始字串。</param>
''' <param name="Find">搜尋的子字串。</param>
''' <param name="Replacement">取代的子字串。</param>
Public Shared Function StrReplace(ByVal Expression As String, _
ByVal Find As String, ByVal Replacement As String) As String
If String.IsNullOrEmpty(Expression) Then
Return String.Empty
Else
Return Replace(Expression, Find, Replacement)
End If
End Function