Maison > Article > développement back-end > Étant donné une chaîne nommée camelCase, convertissez-la au format phrase
Une chaîne C++ est une collection de mots composés de caractères. Il peut contenir des lettres, des chiffres et même des caractères spéciaux. Les phrases de chaînes peuvent être combinées de différentes manières pour former différents types de représentations.
La notation Camel case est une représentation de chaînes qui conserve les deux attributs suivants inchangés -
Les mots sont concaténés sans caractères d'espace.
La première lettre de chaque mot est stockée en majuscule.
Ainsi, les lettres majuscules dans cette représentation peuvent être utilisées pour séparer différents mots. Ce type de représentation n’est pas facile à lire, mais est largement utilisé en programmation.
Une autre représentation des chaînes est la casse des phrases, où les mots sont séparés par des espaces et tous, sauf le premier mot, commencent par une lettre minuscule.
Dans la question ci-dessous, la casse chameau de la chaîne donnée doit être convertie en représentation de la casse de la phrase.
Quelques exemples pour illustrer l'énoncé du problème sont les suivants -
Exemple 1 - str : IdentifierThe@abc
Sortie : Reconnaître @abc
Remarque : les caractères spéciaux sont également imprimés tels quels
Exemple 2 - str:ThisIsCamelCase
Sortie : Ceci est camelCase
Remarque : La première lettre est imprimée telle quelle lors de la sortie.
Ce problème peut être résolu en vérifiant la casse des caractères et en la convertissant dans la casse opposée si nécessaire.
Étape 1 - Utilisez une boucle for pour parcourir la chaîne d'entrée fournie.
Étape 2 - Si le pointeur est sur le premier caractère, imprimez-le tel quel.
Étape 3 - Pour les caractères restants, si des lettres majuscules sont trouvées, affichez d'abord un caractère espace. La lettre est ensuite convertie en minuscule et affichée.
Étape 4 - Sinon, tous les caractères minuscules sont imprimés tels quels. Étape 5 - Sinon, tous les caractères spéciaux sont imprimés tels quels.
L'extrait de code suivant prend comme exemple les chaînes camelCase C++ et les convertit en casse de phrase -
//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
S'il s'agit d'une chaîne, la conversion de casse peut être facilement effectuée. La casse des phrases pour les chaînes améliore la lisibilité. Vous pouvez rendre les mots plus faciles à comprendre en les séparant par des espaces. Dans le pire des cas, la complexité temporelle de la méthode spécifiée ci-dessus est O(n), où n est la longueur de la chaîne. L’algorithme fonctionne donc en temps linéaire. La complexité spatiale de l’algorithme spécifié ci-dessus est O(1), qui est de nature constante.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!