• ベストアンサー

特定文字列を含むものを削除する

フォルダ内に無数のファイルがあります。 特定の文字列、記号が含まれたもの(例えば~がついたものなど) 全ていらないので一括削除したいのですが、 いい方法はないでしょうか? よろしくおねがいします。

noname#2813
noname#2813

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

VB/エクセルVBAでやって見ました。元に戻すが出来ないので、テストは必ずフォルダをコピーして、コピー先ファイルを対象にして行ってください。 上の方のDir()の()内とt=""の中に削除したいファイル名に含む文字列を入れてください。下の方のdir()の()内は何も入れないこと。 Sub test02() a = Dir("c:\My Documents\") 'フォルダ名を指定する mb = "" For i = 1 To 100 b = Dir() If b = "" Then Exit For ' MsgBox b t = "sun" 'ここを指定する文字列・記号変える p = InStr(1, b, t) If p = 0 Then GoTo e01 yn = InputBox(b & "削除しても良いですか y or n") If yn = "y" Then Kill "c:\My Documents\" & b End If e01: Next i End Sub

noname#2813
質問者

補足

ありがとうございました。 早速試してみます。

その他の回答 (1)

  • Hageoyadi
  • ベストアンサー率40% (3145/7860)
回答No.1

特にMicrosoftアプリケーションを使わなくても、Windows標準の「検索」で抽出できますので、ソコから削除なされば良いかと思われます。 具体的には「検索」を起動し、 「名前」欄には「*~*」と入力し、探す場所を指定して「検索開始ボタンを押せば、指定された場所内の「~」をファイル名に含むファイルが全て表示されますので、Ctrl+Aで全てを選択してDeleteキーで削除できます。 ただ、OSがはっきりしないので自信なしです。Windows95以降なら上記の方法で出来ます。

関連するQ&A

  • 特定の文字列を削除

    こんにちは perlで特定の文字列からその後ろをすべて 削除したいのですが、うまくできなくて質問します。 Ex)123.12abc   ⇒123.12 012.123abc   ⇒012.123 123.1234|| ⇒123.1234 上記のようなデータの少数点までの数字の後ろにabc、||、半角、全角スペースなど文字列があります. 少数点までの数字の後ろの文字列すべてを削除したいですが、 特定の文字列からその後ろにある文字列全てを指定する方法(正規表現)はありませんでしょうか? どうかご存知の方、教えてください!! よろしくお願いいたします。

  • 特定文字列を含まない行を削除

    以前特定文字列を含む行を削除する方法の質問をし、正規表現を置換することでできることを知りました。^.*特定の文字列.*\n 今度は特定文字列を含まない行を削除を削除したいです。 この場合どう記述すればいいでしょうか? また、特定文字列1と特定文字列2のどちらかを含まない行を削除する方法もあわせて知りたいです。

  • 特定の文字などを一括削除したい

     タイトルの通りなのですが、特定の文字などを一気に削除してしまう方法はあるでしょうか?  具体的には、例えばメモ帳などに (1)タイトル ここに文章 (2)タイトル ここに文章 (3)タイトル ここに文章  というような感じの構成の文章があるとします。この中で、(1)、(2)などと表示されている行を全て一括で削除したいのです。A,Bでも箇条書き風に○など何でもいいのですが、特定文字列が含まれている行を全て一括で削除したいのです。上記の場合だとタイトルと書かれてある行を全て削除したいのです。手動で削除するのもいいですが、相当数ある場合かなり大変です。特定文字が含まれている行を一括で削除するなどのフリーソフトはないでしょうか?。また、何か方法があるでしょうか?。回答宜しくお願いします。

  • 特定文字列と不特定文字列の削除方法

    下記のA列に時刻が記録されております。 A列 時刻 20:00 21:30 22:00 23:45 0:00(7/17) 1:15 2:00 3:00 21:45 22:15 23:30 1:30(7/18) 4:30 5:00 6:00 上記のA列を基にして、B列にはA列に表示されている(7/17)や(7/18)といった、不要な文字列(日 付が変わった際に、時刻の後ろに日付を付け加えたもの)を削除して表示しています。 B列 時刻 20:00 21:30 22:00 23:45 0:00 1:15 2:00 3:00 21:45 22:15 23:30 1:30 4:30 5:00 6:00 =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"(",""),"/",""),")","") ( / )という文字列は表示されなくなりましたが、 日付の数字部分7,17や7,18などの不特定の文字列の削除方法がわかりませんでし た。 A列を参照して、( / )という特定文字列と、7,17や7,18といった不特定文字列の を削除して、B列に表示させる方法は有りますか? 何卒よろしくお願いしたします。

  • 文字列から、特定の文字を削除したい

    アンケートで入力された値を受け取り、メールで送信しているのですが、受け取った値から、特定の文字列を削除することは可能でしょうか? 例えば電話番号の入力の場合、 03-xxxx-xxxx →03xxxxxxxx 077-xxx-xxxx →077xxxxxxx のように、-(ハイフン)が入力されていたら、-を削除した文字列に置換してメール送信したいのです。 入力する時に、3つのテキストエリアに分けるのは諸事情でできないので、特定の文字を削除する関数か処理方法がありましたら、教えていただきたいです。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • ファイルから特定列を削除する方法

    Linux系OSにてファイルから特定の文字列を削除する方法を教えてください。 やりたい事としては、ログファイルから"error"のキーワードを含む列を永久的に削除すると言ったものです。

  • エクセルマクロ 特定の文字列を含む行を削除

    エクセルマクロ 特定の文字列を含む行を削除 エクセルのマクロについて教えてください。 下の中から列を限定せず、すべての行でAAA、CCCのいずれかがある場合、 その行ごと、すべて削除したいのです。 時に削除したい特定の文字列が数十種類になるため、 マクロ起動時に削除したい特定の文字を記述したファイルを読み込み、それから 削除できるようにしたいのです。場合によってはそのファイルを編集し、 削除したい文字列を変更したいのです。 ご教示いただだけないでしょうか A列 B列 C列 1 AAA BBB CCC 2 BBB CCC FFF 3 DDD BBB FFF 4 AAA CCC DDD 5 GGG RRR UUU 行中にAAA、BBBがある場合、削除したい ↓ A列 B列 C列 5 GGG RRR UUU マクロを実行し、上記の結果にしたい。

  • 特定の文字列を含む行だけ削除する方法?

    いつもお世話になっています。 Unixであるテキストファイルから、 特定の文字列を含む行(レコード)だけを 削除する方法を教えてください。 現在、grepを使って、いろいろ試しているのですが、 正規表現で、 ”***”を含まない行(レコード)だけを 切り出すとう正規表現の説明が見あたりません。 "^**"は、**以外の文字を検索できるようですが、 文字列に対しては、使えません。 grep以外の方法でも良いのですが、 なるべくシンプルにできる方法がありましたら 教えてください。 宜敷お願いします。

  • 特定の文字列を目立つように表示

    ページの検索をすることで、一応ハイライトは可能ですが、特定文字列すべてを一括ハイライトする方法は無いでしょうか? グーグルでは、見やすいようにハイライトされるようにできるみたいですが、 検索結果を見ているとき意外でもそのようなハイライトができると便利だと思います よろしくおねがいします。

  • 特定文字列以下のセル削除

    こんにちは。 特定の文字列を含むセルから5行削除するマクロを作りたいのですが、 どのようにするとよいでしょうか。 特定文字列は、各列に1つあり、行の位置はバラバラです。 その特定文字列を含み以下5行分のセルを削除し、上に詰めたいと考えています。 初心者ゆえ、ご指導ください。

専門家に質問してみよう