PowerShell 正则表达式获取所有 HTML 标签

PowerShell regular expression to get all the HTML tags

我有一个带有 HTML 标签的字符串。我必须编写 PowerShell 脚本来使用 HTML 标签的正则表达式拆分此字符串,包括打开和关闭。我试过很多次但没有运气。 <([A-Z][A-Z0-9])[^>]> 我试过这个用于打开标签。但它只会从字符串中删除“<”和“>”,而不是整个标签。 我的字符串是这样的:

    <Div id="div1">
<Div>
some text inside.
</Div>
<font>this is text inside font.
</font>
<h1>this is h1 text.
</h1>
<p>
This is a new paragraph.
</p>
</Div>

我想要的输出是:里面有一些文字。这是字体内的文字。这是h1文本。这是一个新段落。

不确定您的拆分情况如何,但应该不会那么困难:

$Text = 
@'
   <Div id="div1">
<Div>
some text inside.
</Div>
<font>this is text inside font.
</font>
<h1>this is h1 text.
</h1>
<p>
This is a new paragraph.
</p>
</Div>
'@

$text -split '<.+?>' -match '\S'

some text inside.

this is text inside font.

this is h1 text.    

This is a new paragraph.