How to extract all the substrings between single quotation marks in C#

1 Answer

0 votes
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;

class ExtractAllSubstringsBetweenSingleQuotationMarks
{
    static List<string> ExtractSubstrings(string s)
    {
        // Regular expression pattern to find substrings between single quotation marks
        string pattern = @"'(.*?)'";

        // Find all matches in the input string
        MatchCollection matches = Regex.Matches(s, pattern);
        List<string> substrings = new List<string>();

        foreach (Match match in matches) {
            substrings.Add(match.Groups[1].Value);
        }

        if (substrings.Count == 0) {
            return new List<string>();
        }

        return substrings;
    }

    static void Main()
    {
        string s = "C# 'CSharp' is a 'general-purpose' 'high-level' programming language";
        
        List<string> result = ExtractSubstrings(s);
        
        Console.WriteLine(string.Join(", ", result));
    }
}


  
/*
run:
  
CSharp, general-purpose, high-level
  
*/

 



answered Feb 12, 2025 by avibootz
edited Feb 12, 2025 by avibootz
...