using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"\s?\battr\s*=\s*""\s*""|\s?\battr\b\s*=(?![^=<>]*"")(?!\s*=)|\s?\battr\b(?![^=<>]*"")(?!\s*=)";
string input = @"<img src=""/test-image_1.jpg"" attr attr=""test-image_1"" qwe=""asd"" attr>
<img src=""/test-image_1.jpg"" attr=""test-image_1"" qwe=""asd"" attr=>
<img src=""/test-image_1.jpg"" attr= ""test-image_1"" qwe=""asd"" attr="">
<img src=""/test-image_1.jpg"" attr= ""test-image_1"" qwe=""asd"" attr="" "">
<img attr=""a attr b"" src=""/test-imagalte_1.jpg"" attr qwe=""asd"" />
<img src=""/test- alt image_1.jpg"" attr=""test-image_1"" attr= "" qwe=""asd"" >
<img src=""/test-image_1.jpg"" attr = "" "" asd="" q"" attr=""test-image_1"" attr qwe=""asd"" >
<img src=""/test-image_1.jpg"" attr= ""test-image_1"" qwe=""asd"" attr="" d "" attr = "" d "" attr= "" d "">
<img attr=""test-image_1"" qwe=""asd"" attr >
<img attr=""test-image_1"" qwe=""asd"" battr >
<img attr=""test-image_1"" qwe=""asd"" attrh >
<img attr=""test-image_1"" qwe=""asd"" attr >
<img attr=""test-image_1"" qwe=""asd"" attr =>
<img attr=""test-image_1"" qwe=""asd"" attr=>
<img attr=""test-image_1"" qwe=""asd"" battr = "" >
<img attr=""test-image_1"" qwe=""asd"" attrh= "" "" >
";
foreach (Match m in Regex.Matches(input, pattern))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
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