C# 在C中从字符串中分离base64图像的最佳方法#
我更喜欢使用正则表达式,而不是任何HTML解析器 从HTMl字符串中提取base64图像的最佳方法如下:C# 在C中从字符串中分离base64图像的最佳方法#,c#,C#,我更喜欢使用正则表达式,而不是任何HTML解析器 从HTMl字符串中提取base64图像的最佳方法如下: "<p>This is test </p> <p><img src=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gKgSUNDX1BST0ZJTEUA....+tzPaXLlstlSjpcxKPEqV/zH//2Q==\"></p>&
"<p>This is test </p>
<p><img src=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gKgSUNDX1BST0ZJTEUA....+tzPaXLlstlSjpcxKPEqV/zH//2Q==\"></p>"
如果有一个足够的HTML解析器用于这个用例,正如其他人在评论中所建议的那样,那么就这样做吧 但是,如果这不起作用,正则表达式将起到解救作用!这是使用肯定的lookback断言,并且在第一个双引号之前匹配所有内容。应该有效--如果不起作用,则进行调整
var val = "<p>This is test </p><p><img src=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gKgSUNDX1BST0ZJTEUA....+tzPaXLlstlSjpcxKPEqV/zH//2Q==";
var match = Regex.Match(val, "(?<=data:image/jpeg;base64,)[^\"]*");
Console.WriteLine(match.Value);
// output: /9j/4AAQSkZJRgABAQAAAQABAAD/4gKgSUNDX1BST0ZJTEUA....+tzPaXLlstlSjpcxKPEqV/zH//2Q==
var val=“这是测试请使用一个语法分析器。不要自己编写这样的东西-这么多边缘情况需要处理,不可能完全调试。请获取一个预先编写的语法分析器。
var val = "<p>This is test </p><p><img src=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gKgSUNDX1BST0ZJTEUA....+tzPaXLlstlSjpcxKPEqV/zH//2Q==";
var match = Regex.Match(val, "(?<=data:image/jpeg;base64,)[^\"]*");
Console.WriteLine(match.Value);
// output: /9j/4AAQSkZJRgABAQAAAQABAAD/4gKgSUNDX1BST0ZJTEUA....+tzPaXLlstlSjpcxKPEqV/zH//2Q==