Print first letter of each word in a string using regex

Given a string, extract the first letter of each word in it. “Words” are defined as contiguous strings of alphabetic characters i.e. any upper or lower case characters a-z or A-Z. Examples:

Input : Beginner for Beginner
Output :Gfg

Input : United Kingdom
Output : UK

Below is the Regular expression to extract the first letter of each word. It uses ‘/b'(one of boundary matchers). Please refer How to write Regular Expressions? to learn it.

\b[a-zA-Z]

Java




// Java program to demonstrate extracting first
// letter of each word using Regex
 
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
public class Test
{
    public static void main(String[] args)
    {
        String s1 = "Beginner for Beginner";
        String s2 = "A Computer Science Portal for Beginner";
         
        Pattern p = Pattern.compile("\\b[a-zA-Z]");
         
        Matcher m1 = p.matcher(s1);
        Matcher m2 = p.matcher(s2);
         
        System.out.println("First letter of each word from string \"" + s1 + "\" : ");
        while (m1.find())
            System.out.print(m1.group());
         
        System.out.println();
         
        System.out.println("First letter of each word from string \"" + s2 + "\" : ");
         
        while (m2.find())
            System.out.print(m2.group());
         
         
    }
}


C#




// C# program to demonstrate extracting first
// letter of each word using Regex
 
using System;
using System.Text.RegularExpressions;
 
public class GFG
{
    public static void Main()
    {
        string s1 = "Beginner for Beginner";
        string s2 = "A Computer Science Portal for Beginner";
         
        Regex p = new Regex("\\b[a-zA-Z]");
         
         
        Console.WriteLine("First letter of each word from string \"" + s1 + "\" : ");
        foreach (Match ItemMatch in p.Matches(s1))
            Console.Write(ItemMatch.Value);
         
        Console.WriteLine();
         
        Console.WriteLine("First letter of each word from string \"" + s2 + "\" : ");
         
        foreach (Match ItemMatch in p.Matches(s2))
            Console.Write(ItemMatch.Value);
         
    }
}
 
// This code is contributed by Utkarsh


Python3




# Python program to demonstrate extracting first
# letter of each word using Regex
import re
 
s1="Beginner for Beginner"
s2="A Computer Science Portal for Beginner"
 
p = re.compile("\\b[a-zA-Z]")
 
print("First letter of each word from string '{0}' : ".format(s1))
 
for m1 in re.finditer(p,s1):
    print(m1.group(0),end="")
     
print()
 
print("First letter of each word from string '{0}' : ".format(s2))
 
for m2 in re.finditer(p,s2):
    print(m2.group(0),end="")
     
 
# This code is contributed by Pushpesh Raj.


Output:

First letter of each word from string "Beginner for Beginner" : 
GfG
First letter of each word from string "A Computer Science Portal for Beginner" :
ACSPfG

Next Article: Extracting each word from a String using Regex in Java If you like w3wiki and would like to contribute, you can also write an article using write.w3wiki.net or mail your article to review-team@w3wiki.net. See your article appearing on the w3wiki main page and help other Beginner. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.



Contact Us