首頁 >後端開發 >C++ >給定一個駝峰命名的字串,將其轉換為句子格式

給定一個駝峰命名的字串,將其轉換為句子格式

WBOY
WBOY轉載
2023-08-26 08:57:281244瀏覽

給定一個駝峰命名的字串,將其轉換為句子格式

一個C 字串是由字元組成的單字集合。它可以包含字母、數字甚至特殊字元。字串的句子可以以不同的方式組合在一起,形成不同類型的表示形式。

駝峰命名法是一種字串的表示方式,它保持以下兩個屬性不變 -

  • 這些字被連在一起,沒有空格字元。

  • 每個單字的首字母都以大寫形式儲存。

因此,這種表示形式中的大寫字母可用來分隔不同的單字。這種類型的表示形式不易閱讀,但在程式設計領域廣泛使用。

另一種字串的表示方式是句子大小寫,其中單字由空格字元分隔,除第一個單字外,所有單字以小寫字母開頭。

在下面的問題中,給定字串的駝峰式大小寫必須轉換為句子大小寫表示形式。

說明問題陳述的一些例子如下 -

範例範例

範例1 - str:IdentifyThe@abc

輸出:辨識@abc

說明:特殊字元也按原樣列印

範例2 - str:ThisIsCamelCase

輸出:這是駝峰命名法

說明:第一個字母在輸出過程中按原樣列印。

這個問題可以透過字元大小寫檢查來解決,如果需要,可以將其轉換為相反的大小寫。

演算法

  • 第一步 − 使用for迴圈提供的輸入字串。

  • 步驟 2 - 如果指標位於第一個字符,則按原樣列印。

  • 步驟 3 - 對於剩餘的字符,如果發現大寫字母,則首先顯示一個空格字符。然後將該字母轉換為小寫並顯示。

  • 步驟 4 − 否則,任何小寫字元都會原樣列印。步驟 5 - 否則,任何特殊字元都按原樣列印。

範例

以下程式碼片段以駝峰式 C 字串為例,並將其分別轉換為句子大小寫 -

//including the required libraries
#include <bits/stdc++.h>
using namespace std;

//convert camelcase string to sentence case respectively
void sentenceCase(string str){

   //getting the length of string
   int len = str.length();

   //iterating over the string
   for(int i=0;i<len;i++) {

      //printing the first character of the string
      if(i==0){
         cout << str[0];
      } else {

         //check if current character is in upper case convert to lower case and insert a space before it to separate the words
         if (str[i] >= 'A' && str[i] <= 'Z'){

            //printing a space before character
            cout << " " ;
            char ch = (char)tolower(str[i]);

            //printing the character in lower case
            cout << ch;
         }

         //if character already in lower case print as it is
         else
            cout << str[i];
      }
   }
}
//calling the method
int main(){

   //sample string
   string s = "ConvertCamelCaseToSentenceCase";
   cout<<"Entered String :"<<s;
   cout<<"\nConverted String:";

   //print the sentence case
   sentenceCase(s);
   return 0;
}

輸出

Entered String :ConvertCamelCaseToSentenceCase
Converted String:Convert camel case to sentence case

結論

如果是字串,可以輕鬆進行大小寫轉換。字串的句子大小寫增強了可讀性。透過用空格分隔單詞,可以使單字更容易理解。在最壞的情況下,上述指定方法的時間複雜度為 O(n),其中 n 是字串的長度。因此,該演算法在線性時間內工作。上述指定演算法的空間複雜度為O(1),本質上是常數。

以上是給定一個駝峰命名的字串,將其轉換為句子格式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除