2016-04-07 17 views
-4

特定のものを抽出したい行からの正規表現。例:私が持っている行:これはテストです2016/01/23これはテストです04:05これは01.33秒でテスト成功です。どのように日付、時刻&成功時刻だけを抽出することができます。出力はPSスクリプトの正規表現の行を読み取る正規表現


(2016/01/23 04:05 AM成功01.33秒)です。

あなたのお手伝いをお待ちしております。乾杯!

答えて

0

私は答えようとしています。「私の実際のデータはまったく違うのですが、どのように一致させるのですか?。どれどれ。

# Here is your log line 
$logLine = 'This is a test 2016/01/23 This is test 04:05 AM this is a test Success Login at 01.33 sec' 

# Here is my regex which matches 
#   * date   * time AMPM * Success Login  time  * 
$myRegex = '.*(\d{4}/\d\d/\d\d).*(\d\d:\d\d \S\S).*Success Login at ([0-9.]+ \S+).*' 

# Here is the test and output building 
if ($logLine -match $myRegex) { 
    Write-Host "($($matches[1]) $($matches[2]) Success $($matches[3]))" 
} else { 
    Write-Host "Log doesn't match" 
} 
+0

ありがとう!できます。それだけ。私は次の行が失敗すると、それはまだ成功を示しています。どのように失敗/成功でソートできますか?あなたのご意見に感謝します。 –

+0

@SamTamどういう意味ですか?次の行はどのように見えますか?あなたは何を並べ替えたいですか? – TessellatingHeckler