Regex match words C#
This regular expression can be used to validate that a given string contains only characters in it or extract two words from a given string.
Simple word match
The regular expression to match only words looks like this (including compound words):
new Regex("^\\b(?:\\w|-)+\\b$")
Enter a text in the input above to see the result
Example code in C#:
using System.Text.RegularExpressions;
using System.Linq;
using System;
public class Program
{
public static void Main()
{
// Validate words
Regex validateWordRegex = new Regex("^\\b(?:\\w|-)+\\b$");
Console.WriteLine(validateWordRegex.IsMatch("word")); // prints True
// Extract words from a string
Regex extractWordsRegex = new Regex("\\b(?:\\w|-)+\\b");
string [] extracted = extractWordsRegex.Matches("Hello, world!")
.Cast<Match>()
.Select(m => m.Value)
.ToArray();
Console.WriteLine(String.Join(",", extracted)); // prints Hello,world
}
}