Strings.Replace 方法的注意事项
生活随笔
收集整理的這篇文章主要介紹了
Strings.Replace 方法的注意事项
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Strings.Replace 方法是用在字符串取代常用方法,常用的呼叫方式如下
Strings.Replace("原字符串","尋找的字符串","取代的字符串")?
可是最近發現一個問題,就是當原字符串為 String.Empty (空字符串) 時,其傳回值會為 Nothing。
如下程序代碼會發生「參考的對象具有 'Nothing' 的值」的錯誤訊息。因為原字符串為空字符串,透過 Strings.Replace 方法會傳回 Nothing,所以會造成這個錯誤。
Strings.Replace(string.Empty,"@","").Length
????????'''?字符串取代。
????????'''?</summary>
????????'''?<param?name="Expression">原始字符串。</param>
????????'''?<param?name="Find">搜尋的子字符串。</param>
????????'''?<param?name="Replacement">取代的子字符串。</param>
????????Public?Shared?Function?StrReplace()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
Strings.Replace("原字符串","尋找的字符串","取代的字符串")?
可是最近發現一個問題,就是當原字符串為 String.Empty (空字符串) 時,其傳回值會為 Nothing。
如下程序代碼會發生「參考的對象具有 'Nothing' 的值」的錯誤訊息。因為原字符串為空字符串,透過 Strings.Replace 方法會傳回 Nothing,所以會造成這個錯誤。
Strings.Replace(string.Empty,"@","").Length
所以在使用 Strings.Replace 方法要特別注意這點,防止發生異常的錯誤。而我的作法就是撰寫另一個 StrReplace 方法來取代 Strings.Replace 方法,防止這類錯誤。
????????/**/'''?<summary>????????'''?字符串取代。
????????'''?</summary>
????????'''?<param?name="Expression">原始字符串。</param>
????????'''?<param?name="Find">搜尋的子字符串。</param>
????????'''?<param?name="Replacement">取代的子字符串。</param>
????????Public?Shared?Function?StrReplace()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
總結
以上是生活随笔為你收集整理的Strings.Replace 方法的注意事项的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win10开机蓝屏提示CLASSPNP.
- 下一篇: Win10提示此站点不安全怎么办 Win