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

时间:2015-02-16 16:10:50

标签: regex powershell

我有一个带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文本。这是一个新段落。

1 个答案:

答案 0 :(得分:3)

不确定你的分裂方式,但不应该那么困难:

$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.