前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C#编程-011:判断string为空的方法,附常用的方法

C#编程-011:判断string为空的方法,附常用的方法

作者头像
哆哆Excel
发布2024-03-04 15:15:16
1370
发布2024-03-04 15:15:16
举报
文章被收录于专栏:哆哆Excel哆哆Excel

在C#中,判断一个字符串变量是否为空或空字符串有多种方式,

以下是几种常见的做法:

1. 使用 `string.IsNullOrEmpty()` 方法:

这是最常用且推荐的方法,它可以同时判断字符串是否为 `null` 或者空字符串 (`""`)。

代码语言:javascript
复制
string myString =...;
if(string.IsNullOrEmpty(myString))
{
       Console.WriteLine("The string is either null or empty.");
}

2. 使用 `string.IsNullOrWhitespace()` 方法:

此方法不仅检查字符串是否为 `null` 或空字符串,还检查它是否只包含空白字符(如空格、制表符、换行符等)。如果你关心的是实质性的文本内容而非空白字符,此方法更为适用。

代码语言:javascript
复制
string myString =...;
if(string.IsNullOrWhiteSpace(myString))
{
       Console.WriteLine("The string is either null, empty, or contains only whitespace characters.");
}

3. 直接比较长度:

你也可以通过检查字符串的 `Length` 属性是否为0来判断它是否为空。

代码语言:javascript
复制
string myString =...;
if(myString.Length ==0)
{
       Console.WriteLine("The string is empty.");
}

请注意,在使用上述方法之前,

对于可能会是 `null` 的字符串变量,

直接访问其 `Length` 属性会抛出 `NullReferenceException` 异常,

因此在这种情况下,

优先推荐使用 `string.IsNullOrEmpty()` 或 `string.IsNullOrWhitespace()` 方法。

=====

个人常用的是`string.IsNullOrEmpty()`

在C#中,string 类型提供了大量的方法来操作字符串。

以下是一些常用的 string 方法:

1. 构造方法string(): 创建一个空字符串。

a. string(char[] value): 通过字符数组创建一个字符串。

b. string(char[] value, int startIndex, int length): 通过字符数组的一部分创建一个字符串。

c. string(const char* value): 通过C风格的字符串创建一个字符串。

2. 比较方法Compare(string strA, string strB): 比较两个字符串。

a. CompareOrdinal(string strA, string strB): 使用序数比较两个字符串。

b. Equals(string value): 判断当前字符串是否与指定字符串相等。

c. Equals(string value1, string value2): 判断两个字符串是否相等。

d. StartsWith(string value): 判断字符串是否以指定的字符串开始。

e. EndsWith(string value): 判断字符串是否以指定的字符串结束。

3. 修改方法ToUpper(): 将字符串转换为大写。

a. ToLower(): 将字符串转换为小写。

b. Trim(): 去除字符串两端的空白字符。

c. TrimStart(): 去除字符串开始处的空白字符。

d. TrimEnd(): 去除字符串结束处的空白字符。

e. PadLeft(int totalWidth): 在字符串左侧填充空白字符以达到指定的长度。

f. PadRight(int totalWidth): 在字符串右侧填充空白字符以达到指定的长度。

g. Insert(int index, string value): 在指定位置插入字符串。

h. Remove(int startIndex, int count): 从字符串中移除指定数量的字符。

i. Replace(string oldValue, string newValue): 替换字符串中的指定文本。

j. Substring(int startIndex): 从指定位置开始获取子字符串。

k. Substring(int startIndex, int length): 从指定位置开始并指定长度获取子字符串。

4. 查找方法IndexOf(string value): 查找字符串中第一次出现指定文本的位置。

a. LastIndexOf(string value): 查找字符串中最后一次出现指定文本的位置。

b. Contains(string value): 判断字符串中是否包含指定的文本。

c. StartsWith(string value, StringComparison comparisonType): 使用指定的比较类型判断字符串是否以指定的文本开始。

d. EndsWith(string value, StringComparison comparisonType): 使用指定的比较类型判断字符串是否以指定的文本结束。

5. 格式化方法Format(string format, object arg0): 使用指定的格式字符串和一个对象参数格式化字符串。

a. Format(IFormatProvider provider, string format, params object[] args): 使用指定的格式提供程序、格式字符串和对象参数数组格式化字符串。

b. Concat(string str0, string str1): 连接两个字符串。

c. Concat(params string[] values): 连接字符串数组中的所有字符串。

d. Join(string separator, string[] value): 使用指定的分隔符连接字符串数组中的所有字符串。

6. 编码与解码Encode(Encoding encoding): 使用指定的字符编码将字符串转换为字节数组。

a. Decode(Encoding encoding): 使用指定的字符编码将字节数组解码为字符串。

7. 分割方法Split(params char[] separator): 使用指定的字符数组将字符串分割为子字符串数组。

a. Split(string[] separator, StringSplitOptions options): 使用指定的字符串数组和选项将字符串分割为子字符串数组。

8. 其他方法IsNullOrEmpty(string value): 判断字符串是否为 null 或空字符串。

a. IsNullOrWhiteSpace(string value): 判断字符串是否为 null、空字符串或只包含空白字符。

b. Intern(string str): 将指定的字符串添加到字符串驻留池(intern pool)中。

c. CopyTo(int sourceIndex, char[] destination, int destinationIndex, int count): 将指定数量的字符从一个字符串复制到字符数组。

d. Length: 获取字符串的长度。

e. Chars: 获取指定位置的字符。

这些方法提供了对字符串的丰富操作,使得在C#中处理字符串变得非常灵活和方便。

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-03-02,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com