私は、Excel または DB に簡単にロードできる別の区切り形式にファイルを解析するために、powershell スクリプトに取り組んでいます。
文字列「~S~|」を見つけて置き換えることを除いて、ほとんど理解できました。ここで、すべての文字はリテラルとして解釈する必要があります。
次のことを試みましたが、うまくいきませんでした: "\~S\~\|" "~S~\|" 「~し~|」<-- これは squirrely です | is または in RegEx land
どんな提案も役に立ちます。
私は、Excel または DB に簡単にロードできる別の区切り形式にファイルを解析するために、powershell スクリプトに取り組んでいます。
文字列「~S~|」を見つけて置き換えることを除いて、ほとんど理解できました。ここで、すべての文字はリテラルとして解釈する必要があります。
次のことを試みましたが、うまくいきませんでした: "\~S\~\|" "~S~\|" 「~し~|」<-- これは squirrely です | is または in RegEx land
どんな提案も役に立ちます。
私は回避策でこれを回避することができました。すべてのご意見をお寄せいただきありがとうございます。すべての回答はご説明どおりに機能します。
これを「検索」値の複数のインスタンスを持つ非常に長い文字列で機能させるには、文字列が大きくなるにつれて文字列を作成する必要がありました。
例えば:
$tString = $_
$tString = $tString -replace 'Name:', ''
$tString = $tString -replace 'Id:', ''
$tString = $tString -replace 'Administrative group:', ''
$tString = $tString -replace 'Administrative class\(es\):', ''
$tString = $tString -replace 'Primary group:', ''
$tString = $tString -replace 'Session group:', ''
$tString = $tString -replace '~S~([^-]+)\|', '$1|'
$tString = $tString -replace ';\|', ';'
return $tString
これを試すことができますか:
$string = "this~S~|is~S~|a~S~|dog"
$string -replace '~S~\|',' '