Capitalize the first and last character of each word in a string
Last Updated :
07 Aug, 2022
Given the string, the task is to capitalise the first and last character of each word in a string.
Examples:
Input: Geeks for geeks
Output: GeekS FoR GeekS
Input: Geeksforgeeks is best
Output: GeeksforgeekS IS BesT
Approach
- Create a character array of the String
- Run a loop from the first letter to the last letter.
- Check if the character is the starting or end of the word
- Check if the character is a small letter.
- If yes, then Capitalise the character of the string.
Below is the implementation of the above approach.
C++
// CPP program to capitalise the first
// and last character of each word in a string.
#include<bits/stdc++.h>
using namespace std;
string FirstAndLast(string str)
{
// Create an equivalent string
// of the given string
string ch = str;
for (int i = 0; i < ch.length(); i++)
{
// k stores index of first character
// and i is going to store index of last
// character.
int k = i;
while (i < ch.length() && ch[i] != ' ')
i++;
// Check if the character is a small letter
// If yes, then Capitalise
ch[k] = (char)(ch[k] >= 'a' && ch[k] <= 'z'
? ((int)ch[k] - 32)
: (int)ch[k]);
ch[i - 1] = (char)(ch[i - 1] >= 'a' && ch[i - 1] <= 'z'
? ((int)ch[i - 1] - 32)
: (int)ch[i - 1]);
}
return ch;
}
// Driver code
int main()
{
string str = "Geeks for Geeks";
cout << str << "\n";
cout << FirstAndLast(str);
}
// This code is contributed by ihritik
Java
// Java program to capitalise the first
// and last character of each word in a string.
class GFG {
static String FirstAndLast(String str)
{
// Create an equivalent char array
// of given string
char[] ch = str.toCharArray();
for (int i = 0; i < ch.length; i++) {
// k stores index of first character
// and i is going to store index of last
// character.
int k = i;
while (i < ch.length && ch[i] != ' ')
i++;
// Check if the character is a small letter
// If yes, then Capitalise
ch[k] = (char)(ch[k] >= 'a' && ch[k] <= 'z'
? ((int)ch[k] - 32)
: (int)ch[k]);
ch[i - 1] = (char)(ch[i - 1] >= 'a' && ch[i - 1] <= 'z'
? ((int)ch[i - 1] - 32)
: (int)ch[i - 1]);
}
return new String(ch);
}
// Driver code
public static void main(String args[])
{
String str = "Geeks for Geeks";
System.out.println(str);
System.out.println(FirstAndLast(str));
}
}
Python3
# Python3 program to capitalise the first
# and last character of each word in a string.
def FirstAndLast(string) :
# Create an equivalent char array
# of given string
ch = list(string);
i = 0 ;
while i < len(ch):
# k stores index of first character
# and i is going to store index of last
# character.
k = i;
while (i < len(ch) and ch[i] != ' ') :
i += 1;
# Check if the character is a small letter
# If yes, then Capitalise
if (ord(ch[k]) >= 97 and
ord(ch[k]) <= 122 ):
ch[k] = chr(ord(ch[k]) - 32);
else :
ch[k] = ch[k]
if (ord(ch[i - 1]) >= 90 and
ord(ch[i - 1]) <= 122 ):
ch[i - 1] = chr(ord(ch[i - 1]) - 32);
else :
ch[i - 1] = ch[i - 1]
i += 1
return "" . join(ch);
# Driver code
if __name__ == "__main__" :
string = "Geeks for Geeks";
print(string);
print(FirstAndLast(string));
# This code is contributed by Ryuga
C#
// C# program to remove the first
// and last character of each word in a string.
using System;
class GFG
{
static String FirstAndLast(String str)
{
// Create an equivalent char array
// of given string
char[] ch = str.ToCharArray();
for (int i = 0; i < ch.Length; i++)
{
// k stores index of first character
// and i is going to store index of last
// character.
int k = i;
while (i < ch.Length && ch[i] != ' ')
i++;
// Check if the character is a small letter
// If yes, then Capitalise
ch[k] = (char)(ch[k] >= 'a' && ch[k] <= 'z'
? ((int)ch[k] - 32)
: (int)ch[k]);
ch[i - 1] = (char)(ch[i - 1] >= 'a' && ch[i - 1] <= 'z'
? ((int)ch[i - 1] - 32)
: (int)ch[i - 1]);
}
return new String(ch);
}
// Driver code
public static void Main(String []args)
{
String str = "Geeks for Geeks";
Console.WriteLine(str);
Console.WriteLine(FirstAndLast(str));
}
}
/* This code contributed by PrinciRaj1992 */
PHP
<?php
// PHP program to capitalise the first
// and last character of each word in a string.
function FirstAndLast($str)
{
// Create an equivalent string
// of the given string
$ch = $str;
for ($i = 0; $i < strlen($ch); $i++)
{
// $k stores index of first character
// and $i is going to store index of last
// character.
$k = $i;
while ($i < strlen($ch) && $ch[$i] != ' ')
$i++;
// Check if the character is a small letter
// If yes, then Capitalise
$ch[$k] = chr(($ch[$k] >= 'a' && $ch[$k] <= 'z')
? (ord($ch[$k]) - 32) : (ord($ch[$k])));
$ch[$i - 1] = chr(($ch[$i - 1] >= 'a' && $ch[$i - 1] <= 'z' )
? (ord($ch[$i - 1]) - 32) : (ord($ch[$i - 1])));
}
return $ch;
}
// Driver code
$str = "Geeks for Geeks";
echo $str, "\n";
echo FirstAndLast($str);
// This code is contributed by ihritik
?>
JavaScript
<script>
// JavaScript program to capitalise the first
// and last character of each word in a string.
function FirstAndLast(str)
{
// Create an equivalent string
// of the given string
var ch = str.split('');
for (var i = 0; i < ch.length; i++)
{
// k stores index of first character
// and i is going to store index of last
// character.
var k = i;
while (i < ch.length && ch[i] != ' ')
i++;
// Check if the character is a small letter
// If yes, then Capitalise
ch[k] = String.fromCharCode(ch[k] >= 'a' &&
ch[k] <= 'z' ? (ch[k].charCodeAt(0) - 32)
: ch[k].charCodeAt(0));
ch[i - 1] = String.fromCharCode(ch[i - 1] >= 'a'
&& ch[i - 1] <= 'z'? (ch[i - 1].charCodeAt(0) - 32)
: ch[i - 1].charCodeAt(0));
}
return ch.join('');
}
// Driver code
var str = "Geeks for Geeks";
document.write( str + "<br>");
document.write( FirstAndLast(str));
</script>
Output: Geeks for Geeks
GeekS FoR GeekS
Time Complexity: O(N) where N is the length of the original string
Auxiliary Space: O(N) where N is the length of the original string
Similar Reads
How to find the first and last character of a string in Java Given a string str, the task is to print the first and the last character of the string. Examples: Input: str = "GeeksForGeeks" Output: First: G Last: s Explanation: The first character of the given string is 'G' and the last character of given string is 's'. Input: str = "Java" Output: First: J Las
3 min read
Print last character of each word in a string Given string str, the task is to print the last character of each word in the string.Examples: Input: str = "Geeks for Geeks" Output: s r s Input: str = "computer applications" Output: r s Approach: Append a space i.e. " " at the end of the given string so that the last word in the string is also fo
4 min read
Capitalize the First Letter of a String in Java In Java, to check if a String contains only uppercase letters, we can use many approaches. These approaches verify each character in the String to ensure they are all in uppercase. A simple method, such as iterating through the characters and checking their case. In this article, we will discuss how
4 min read
Remove first and last character of a string in Java Given a string str, the task is to write the Java Program to remove the first and the last character of the string and print the modified string.Examples:Input: str = "GeeksForGeeks"Output: "eeksForGeek"Explanation: The first and last characters of the given string are 'G' and 's' respectively. Afte
4 min read
Capitalize the First Letter of a String in Java Using Regex In Java, we can use regular expressions to make the first character of each word in Uppercase as the word is represented as a String and string is the collection of characters. So, in Java, we can use pattern and matcher class methods to find the first character of a word and then replace it with it
2 min read