いくつかの Web ログ ファイルを編集していて、一部のフィールドから二重引用符を削除したいのですが、すべてではありません。
たとえば、次の行では、IP アドレスと server.domain.com から二重引用符を削除し、残りはそのままにします。
2013-02-18 21:47:46.636 POST /Path/page.html - - "173.194.79.106" "Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.296)" - "server.domain.com" 200 1079 15
各行をロードするファイルをループしていますForeach-Object
これで、IP アドレスを引用符なしで行を取得できます。
[regex]::replace($_,"`"(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})`"", '$1')
そこで、以下を使用して、server.domain.com アイテムに対して同じことを試みました。
[regex]::replace($_,"`"[a-zA-Z]*\.[dD][oO][mM][aA][iI][nN]\.[cC][oO][mM]`"",'$1')
私の結果はこれです:
2013-02-18 21:47:46.636 POST /Path/page.html - - "173.194.79.106" "Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.296)" - $1 200 1079 15
私は何を間違っていますか?