理解VC# 2005中的字符串和正规表达式
DateTime dt = DateTime.Now; Console.WriteLine(string.Format("Default format: {0}", dt.ToString())); Console.WriteLine(dt.ToString("dddd dd MMMM, yyyy g")); Console.WriteLine(string.Format("Custom Format 1: {0:MM/dd/yy hh:mm:sstt}", dt)); Console.WriteLine(string.Format("Custom Format 2: {0:hh:mm:sstt G\MT zz}", dt)); |
下面是前面代码的输出:
Default format: 9/24/2005 12:59:49 PM Saturday 24 September, 2005 A.D. Custom Format 1: 09/24/05 12:59:49PM Custom Format 2: 12:59:49PM GMT -06 |
你还可以提供针对数字值的定制格式修饰符。表格2描述了适用于数字值的定制格式修饰符。
表格2.数字定制格式修饰符
修饰符 | 描述 |
0 | 零占位符。 |
# | 数字占位符。如果给定的值中在#修饰符指示的位置有一个数字,那么该数字将以格式化输出显示。 |
. | 十进制点。 |
, | 千分位分隔符。 |
% | 百分比修饰符。被格式化的值在包括到格式化的输出前将乘以100。 |
E0/E+0/e/e+0/e-0/E | 科学标志。 |
"XX"或"XX" | 代表格式的字符串。这些被包含在格式化的输出中,而不翻译其相对位置。 |
; | 用于条件格式化负数,零和正值的节分隔符。 |
如果定义多个格式节,那么你可以更精确地控制数字的格式化:
· 两个节-如果你有两个格式化节,则第一节应用于所有正数(包括0)值。第二节应用于负数值,当你想把负数值包括在括号中(就象中许多财务软件包中一样),这是十分方便的。
· 三个节-如果你有三个格式化节,则第一个节应用于所有正数(不包括0)值。第二节应用于负数值,第三节应用于零。
下列代码显示如何使用定制数字格式修饰符。
double dVal = 59.99; double dNeg = -569.99; double zeroVal = 0.0; double pct = 0.23; string formatString = "{0:$#,###0.00;($#,###0.00);nuttin}"; Console.WriteLine(string.Format(formatString, dVal)); Console.WriteLine(string.Format(formatString, dNeg)); Console.WriteLine(string.Format(formatString, zeroVal)); Console.WriteLine(pct.ToString("00%")); |
前面的代码将产生如下所示的输出结果:
$59.99
($569.99)
nuttin
23%
(三) 操作和比较字符串
除了显示包含各种格式化数据的字符串外,其它普通与字符串有关的任务就是字符串操作和比较。要记住的一个重要的事情是,字符串实际上是.NET框架基类库中的一个类。因为它是一个类,所以实际上,你可以调用一个字符串的方法,就象你可以调用任何其它类上的方法一样。
你可以在字符串常数或字符串变量调用这些方法,见下列代码:
int x = string.Length(); int y = "Hello World".Length(); |
表格3简短列举了一些你可以使用于字符串的最常用的方法以便获得该字符串的信息或操作它。
表格3.常用的字符串实例方法
方法 | 描述 |
CompareTo | 把这个字符串实例与其它字符串实例比较。 |
Contains | 返回一布尔值,指示是否当前字符串实例包含给定的子串。 |
CopyTo | 从字符串实例中把一个子串复制到一个字符数组的特定位置。 |
EndsWith | 返回一布尔值,指示是否字符串以一个给定的子串结束。 |
Equals | 指示是否该字符串等于另一个字符串。你还可以使用'=='操作符来代替。 |
IndexOf | 返回一个子串在字符串实例中的索引。 |
IndexOfAny | 返回一个字符串实例中在子串内的任何字符的第一次索引的出现。 |
PadLeft | 使用特定数目的空格或其它Unicode字符来填充字符串,特别适用于字符串右对齐。 |
PadRight | 把一组特定的空格字符或其它Unicode字符添加到字符串的最后,创建一个字符串右对齐效果。 |
Remove | 从字符串中删除给定数目的字符。 |
Replace | 使用特定的代替内容来代替一个给定的字符或字符串在字符串实例中的所有出现。 |
Split | 使用特定的字符作为分割点,把当前字符串分解成一个字符串数组。 |
StartsWith | 返回一个布尔值,指示是否该字符串实例以一个特定的字符串开始。 |
SubString | 给定起始点和长度的情况下,返回字符串的特定部分。 |
ToCharArray | 把字符串转换成一个字符数组。 |
ToLower | 把字符串全部转换成小写字符。 |
ToUpper | 把字符串全部转换成大写字符。 |
Trim | 从一个字符串的开始和结束位置,删除一组给定字符的所有出现。 |
TrimStart | 实现Trim功能,但仅从字符串的开始位置。 |
TrimEnd | 实现Trim功能,但仅从字符串的结束位置。 |
下列代码展示了你可以使用上面的相应函数来实现字符串查询和操作等:
天极yesky
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论