の日付見つける:私は、テキストファイル解析されているPowerShellの変数
$Sel = select-string -pattern "Date=*" -path D:\test_file.txt -List
、ここではその結果である:
D:\test_file.txt:3: <aaa="000000" Date="2016-12-05"> <bbbbb="cccc" dddd="20161209" eeee="2016-12-09" fff="ggggg" hhhh="hhh" aaaa="1" bbbb="100" cccc="100">
私はそれ
$regex = "(19|20)[0-9]{2}[- -.](0[1-9]|1[012])[- -.](0[1-9]|[12][0-9]|3[01])"
上で正規表現を実行しようとしています
これを再度解析するには、
select-string -pattern $regex -InputObject $Sel
しかし、それは機能しませんでした。上記の文字列で日付を見つける方法はありますか?
ありがとうございます。$ dateはどのように定義しますか? – user5711825
あなたが望む日付は$ matches [0]です。$ matches [0]はシステム変数で、別の正規表現のマッチで上書きできるので、別の変数に入れます。できるだけ早く抽出する必要があります。 2行目が$ matches [0]だった場合、出力に日付が書き込まれます。 –
OKこれを実行した結果は次のようになります。 'PS C:\ $ sel -match $ regex True'とその後$ date = $は[0]と一致します。 – user5711825