実現したいこと
replaceを使って、配列の値に部分一致した値ごと置換することは可能でしょうか。
調べてみると一致した箇所のみ置換する方法は見かけますが、部分一致した箇所を一行置換する方法はうまく見つからず悩んでいます。
経験が浅いため、教えていただけると嬉しいです。
よろしくお願いいたします。
(例)作成した配列の値に"test1"と一致した行を空白に置換 $test =@('test1.あいうえお','test2.あいうえお','test3.あいうえお','test4.あいうえお') =置換前= =置換後= test1.あいうえお → test2.あいうえお → test2.あいうえお test3.あいうえお → test3.あいうえお test4.あいうえお → test4.あいうえお
追記、編集
2021.07.20
「一行置換」というのはテキストファイルか何かでしょうか?
「配列」とはプログラムの配列構造の変数のことと捉えてしまいます。
もう少し具体的な情報がないと判断出来かねますね。
こちらを参考に質問文を詳しく記述出来ると解決が早まると思います。
https://teratail.com/help/question-tips
質問の内容だけから考えると、一致したかどうかを判定して一致したときは空行を返すだけでいいのでは?と思いますが。
-replace は正規表現が使えないと使いにくいと思います。
"test1.あいうえお" -replace "^.*test1.*$", ""
odataikiさん
→回答しにくい質問をしてしまい、申し訳ございません。いただいたURLを先程確認しました。
次回はURLを参考に詳しく情報を記述します。@()を使って作成した配列内の値のことです。
ku__ra__geさん
→ご提案いただき、ありがとうございます。
他の方法もありましたが、今回は自身の勉強も含めてrelaceを使った置換方法を探しておりました。
Zuishinさん
→正規表現の知識不足ですね。。正規表現で実施したところ、成功しました。
教えていただき、ありがとうございます。
回答1件
あなたの回答
tips
プレビュー