字符串中有几个ab:tag_x标记。
标记格式:
<ab:tag_x contents="some text" src_id="some id">
如何将每个标签替换为其中一个属性的值 - “内容”?
示例:
<ab:tag_x contents="some text1" src_id="some id"> -> some text1
<ab:tag_x contents="some text2" src_id="some id"> -> some text2
谢谢, LG
答案 0 :(得分:1)
可能需要一些抛光,但这就是我得到的。
class Program
{
static void Main()
{
string data = "<data><ab:tag_x contents=\"some text1\" src_id=\"some id\"><br/><ab:tag_x contents=\"some text2\" src_id=\"some id\"></data>";
string pattern = "<ab:tag_x.*?contents=\"(.*?)\".*?>";
string replacement = "$1";
string result = Regex.Replace(data, pattern, replacement);
Console.WriteLine(result);
}
}
要了解模式的工作原理或修改方式,请在Regular Expression Language上阅读此MSDN。
要了解替换字符串的工作原理或修改方式,请在Regular Expressions Substitutions上阅读此MSDN。
HTH
答案 1 :(得分:0)
我建议如下:
string result = Regex.Replace(myhtml,
"<ab:tagx[^>]+contents=\"([^\"]*)\"[^>]*>\",
"$1");
这将处理:
contents
属性contents
属性contents=""
).*?
)。假设:
contents
属性始终为小写。contents
属性,即使该值为空。