欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實(shí)現(xiàn)字符串首字母大寫的方法示例

 更新時(shí)間:2018年01月28日 14:19:34   作者:lindexi  
這篇文章主要給大家介紹了關(guān)于利用C#實(shí)現(xiàn)字符串首字母大寫的相關(guān)資料,這是在最近工作中遇到的一個(gè)需求,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

最近在工作中遇到一個(gè)需求,需要將字符串的首字母進(jìn)行大寫,所以找到一些把字符串首字符大寫的方法分享給大家,下面話不多說了,來一起看看詳細(xì)的介紹吧。

假如需要把字符串 “red” 轉(zhuǎn)換為 “Red”,把 “red house” 轉(zhuǎn)為 “Red house” 或者單詞的第一個(gè)大寫,下面就是我從網(wǎng)上看到的技術(shù)。

public static string FirstCharToUpper(string input)
{
 if (String.IsNullOrEmpty(input))
  throw new ArgumentException("ARGH!");
 return input.First().ToString().ToUpper() + input.Substring(1);
}

這個(gè)方法就是拿到第一個(gè)字符,然后加上后面的字符,可以看到這個(gè)方法需要三個(gè)字符串在內(nèi)存。

public string FirstLetterToUpper(string str)
{
 if (str == null)
  return null;
 if (str.Length > 1)
  return char.ToUpper(str[0]) + str.Substring(1);
 return str.ToUpper();
}

這個(gè)方法也是需要兩個(gè)字符串。

下面的方法大概大家比較少會(huì)去發(fā)現(xiàn),就是 CultureInfo 的方法

CultureInfo.CurrentCulture.TextInfo.ToTitleCase(str.ToLower());

這個(gè)方法是比較好方法,假如我輸入”red house” 那么就會(huì)轉(zhuǎn)換為 “Red House”

上面的方法還可以使用這個(gè)方法

CultureInfo("en-US").TextInfo.ToTitleCase("red house");

如果需要使用拼接,可以使用這個(gè)方法

s.Remove(1).ToUpper() + s.Substring(1)

上面這個(gè)方法不會(huì)把 “red house” 轉(zhuǎn)換為 “Red House”

下面給大家一個(gè)性能比較好的方法

char[] a = s.ToCharArray();
  a[0] = char.ToUpper(a[0]);
  return new string(a);

如果需要很多字符串都這樣把第一個(gè)大寫,可以使用下面方法

string str = "red house";
   Console.WriteLine(System.Text.RegularExpressions.Regex.Replace(str, "^[a-z]", m => m.Value.ToUpper()));

和上面方法一樣寫法,可以使用另外的函數(shù)

Regex.Replace(str, @"^\w", t => t.Value.ToUpper());

如果希望有最好的速度,那么請(qǐng)用下面方法

public static unsafe string ToUpperFirst(this string str)
{
 if (str == null) return null;
 string ret = string.Copy(str);
 fixed (char* ptr = ret) 
  *ptr = char.ToUpper(*ptr);
 return ret;
}

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • C#手動(dòng)操作DataGridView使用各種數(shù)據(jù)源填充表格實(shí)例

    C#手動(dòng)操作DataGridView使用各種數(shù)據(jù)源填充表格實(shí)例

    本文主要介紹了C#手動(dòng)操作DataGridView使用各種數(shù)據(jù)源填充表格實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 使用C#實(shí)現(xiàn)解析Excel公式

    使用C#實(shí)現(xiàn)解析Excel公式

    在日常工作中,我們經(jīng)常需要在Excel中使用公式對(duì)表中數(shù)據(jù)進(jìn)行計(jì)算和分析,所以本文小編主要來和大家介紹一下如何在C#中實(shí)現(xiàn)解析Excel公式,感興趣的可以了解下
    2024-02-02
  • C#使用itextsharp生成PDF文件的實(shí)現(xiàn)代碼

    C#使用itextsharp生成PDF文件的實(shí)現(xiàn)代碼

    以下是對(duì)在C#中使用itextsharp生成PDF文件的實(shí)現(xiàn)代碼進(jìn)行了詳細(xì)分析介紹,需要的朋友可以過來參考下
    2013-07-07
  • 深入學(xué)習(xí)C#多線程

    深入學(xué)習(xí)C#多線程

    本文詳細(xì)講解了C#多線程編程的相關(guān)技術(shù),文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • C#實(shí)現(xiàn)聊天消息渲染與圖文混排詳解

    C#實(shí)現(xiàn)聊天消息渲染與圖文混排詳解

    在實(shí)現(xiàn)聊天軟件時(shí),渲染文字表情圖文混排是一項(xiàng)非常繁瑣的工作,再加上還要支持GIF動(dòng)圖、引用消息、撤回消息、名片等不同樣式的消息渲染時(shí),就更加麻煩了。本文就來和大家分享一下具體實(shí)現(xiàn)方法,希望對(duì)大家有所幫助
    2023-02-02
  • C#使用OleDb操作Excel和數(shù)據(jù)庫(kù)的策略

    C#使用OleDb操作Excel和數(shù)據(jù)庫(kù)的策略

    在C#編程中,使用OleDb可以方便地實(shí)現(xiàn)對(duì)Excel文件和數(shù)據(jù)庫(kù)的操作,本文探討了在C#中使用OleDb技術(shù)操作Excel和數(shù)據(jù)庫(kù)的策略,文章詳述了OleDb的定義、配置環(huán)境的步驟,并通過實(shí)際代碼示例演示了如何高效讀寫Excel文件和交互數(shù)據(jù)庫(kù),需要的朋友可以參考下
    2024-05-05
  • PowerShell 定時(shí)執(zhí)行.Net(C#)程序的方法

    PowerShell 定時(shí)執(zhí)行.Net(C#)程序的方法

    利用PowerShell可以調(diào)用動(dòng)態(tài)頁(yè)面,然后再用 .bat 執(zhí)行 PowerShell 腳本,最后把 .bat 添加到服務(wù)器的任務(wù)計(jì)劃里面。OK,所有操作都做好了,.Net 定時(shí)執(zhí)行了,是不是呢,有木有呢。
    2013-04-04
  • C#淺拷貝和深拷貝實(shí)例解析

    C#淺拷貝和深拷貝實(shí)例解析

    這篇文章主要介紹了C#淺拷貝和深拷貝,是比較重要的概念,需要的朋友可以參考下
    2014-08-08
  • C# 語(yǔ)音功能的實(shí)現(xiàn)方法

    C# 語(yǔ)音功能的實(shí)現(xiàn)方法

    最近看了一些資料,是c#實(shí)現(xiàn)語(yǔ)音功能的?,F(xiàn)在就簡(jiǎn)單的講一下怎么實(shí)現(xiàn)。
    2013-03-03
  • DataGridView控件顯示行號(hào)的正確代碼及分析

    DataGridView控件顯示行號(hào)的正確代碼及分析

    今天要用到DataGridView,想給它動(dòng)態(tài)的顯示行號(hào)。于是在網(wǎng)上找了一下解決方法。結(jié)果發(fā)現(xiàn)了不少問題。然而就是這么一段有錯(cuò)的代碼,幾乎充斥著整個(gè)互聯(lián)網(wǎng),千篇一律的COPY,沒有一個(gè)人糾正
    2013-08-08

最新評(píng)論