[英]Multiple split between two chars to string array
我需要拆分一个由html元素组成的字符串。
我想在两个字符“ <”和“>”之间分割。
var htmlElements = "<p>lorem ipsum</p><span>nisi sapien</span><ul><li>list items</li></ul>";
string[] arrayOfElements = htmlElements.Split('<', '>')[1];
使用此代码仅提取第一个“ p”。 我需要拉出每个元素到字符串数组。 结束标签</p>
没关系,我只需要每个元素的开始标签。
所需的输出是包含p span ul li
的字符串数组
我建议使用正则表达式以提取 (匹配)所需的值:
string htmlElements = "<p>lorem ipsum</p><span>nisi sapien</span><ul><li>list items</li></ul>";
string[] arrayOfElements = Regex
.Matches(htmlElements, @"<(\w+)>")
.OfType<Match>()
.Select(m => m.Groups[1].Value)
.ToArray();
测试
// p span ul li
Console.Write(string.Join(" ", arrayOfElements));
在一般情况下 ,通过正则表达式解析 html是个坏主意 ,但是如果您只想获取项目的值,那就足够了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.