C# 从字符串中提取指定字符类型的内容

时间:2023-12-25 13:52:19

从一段字符串中,提取中文、英文、数字

中文字符30Margin中文字符40HorizontalAlignment

正则表达式:

     /// <summary>
/// 英文字母与数字
/// </summary>
public const string LettersAndNumbers = "[a-zA-Z0-9]+"; /// <summary>
/// 中文字符
/// </summary>
public const string ChineseChars = "[\u4E00-\u9FA5]+"; /// <summary>
/// 英文字符
/// </summary>
public const string EnglishChars = "[a-zA-Z]+";

PS:使用正则匹配字符内容,不能使用开始、结束字符( ^文本开始; $文本结束)。

Regex使用:

 string ChineseChars = "[\u4E00-\u9FA5]+";
var match = Regex.Match("中文字符30Margin中文字符40HorizontalAlignment", ChineseChars, RegexOptions.IgnoreCase);
var result = $"Index:{match.Index},Length:{match.Length}\r\nResult:{match.Value}";

C# 从字符串中提取指定字符类型的内容C# 从字符串中提取指定字符类型的内容C# 从字符串中提取指定字符类型的内容

注:

Regex.Match只会返回第一个匹配项

如果需要获取正则对应的所有匹配项,可以使用 Regex.Matches

C# 从字符串中提取指定字符类型的内容