我有一个自己生成的 HTML 文件(在本地目录中),所有正文都在一行中:
<html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>server - path</title></head><body><H1>server - path</H1><hr>
<pre><A HREF="/logs/folder/">[To Parent Directory]</A><br><br> jeudi 5 janvier 2017 19:38 116483 <A HREF="/folder/file1.csv">file1.csv</A><br> jeudi 5 janvier 2017 19:39 138397 <A HREF="/folder/file2.csv">file2.csv</A></A><br></pre><hr></body></html>
我需要提取文件名和日期。
我成功地阅读了正确的行。但我无法在 <br>
上拆分线路.
我尝试这样的事情:
$string = "first line<br>second line <br> third line<br> end<br>"
write-host $string
$separator = "<br>"
$option = [System.StringSplitOptions]::RemoveEmptyEntries
$string.Split($separator, $option)
但我有这样的结果:
first line<br>second line <br> third line<br> end<br>
fi
st line
second line
thi
d line
end
我看到了 HTML Agility Pack,但就我而言,我的页面中没有任何标记。
你有什么建议吗? 谢谢!
最佳答案
String.Split()
method带上你的字符串 <br>
并将其视为 [char]
数组,在每次出现 <
时拆分, b
, r
和 >
.
使用基于正则表达式的 -split
运算符代替:
PS C:\> $String -split $separator |Where-Object {$_}
first line
second line
third line
end
Where-Object {$_}
管道元素将过滤掉空字符串
关于html - 电源外壳 : split HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41759827/