using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"^data:(?:(?<mime>[^;,]+);?)?(?:;charset=(?<charset>[^;,]+);?)?(?:;(?<base64>base64);?)?,(?<content>.*)$";
string substitution = @"📦mime: 『$1』 📦charset: 『$2』 📦content: 『$4』 《$3》\n---------------------------------------------------------------------------------";
string input = @"data:text/html base64,PGgxPua1i+ivlTwvaDE+
data:text/html;,PGgxPua1i+ivlTwvaDE+
data:text/html;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=big5;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=utf-16le;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=utf-16be;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=gbk;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=latin1;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=utf8;base64,PGgxPua1i+ivlTwvaDE+
data:text/plain;charset=utf8;base64,PGgxPua1i+ivlTwvaDE+
data:text/html;charset=gbk;base64,PGgxPrLiytQ8L2gxPg==
data:text/html;base64,测试
data:text/html,%E6%B5%8B%E8%AF%95
";
RegexOptions options = RegexOptions.Multiline;
Regex regex = new Regex(pattern, options);
string result = regex.Replace(input, substitution);
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx