none
特定の数字のみ抽出 RRS feed

  • 質問

  •  お世話になります。

    テキストの中にランダムにある特定の13桁の数字だけ抜き出してテキストに保存したいのですが

    記述の仕方がわかりません。

    初歩的な質問で申し訳ありませんがご教授お願いいたします。

    2018年11月15日 12:43

すべての返信

  • 「テキスト」という単語が2つ出てきていますが、いずれも「テキストファイル」という意味でしょうか。

    特定の13桁の数字というのは、「テキスト」の中に複数出現するのでしょうか。出現しない場合もあるのでしょうか。14桁以上の数字は存在しうるのでしょうか、その場合その数字はどう扱われるべきでしょうか。数字というのはいわゆる半角のアラビア数字のみですか、全角やら漢数字やら考えなくて問題ないですか。10進法以外とか小数点とか桁区切りのカンマとか考えなくて問題ないですか。13桁の数字の途中に改行とか入ったりしませんか。

    「テキスト」に保存というのは単にその13桁の数字だけが記述されただけの「テキスト」になるのでしょうか。「テキスト」が既に存在していた場合は。13桁の数字というのが複数出現した場合は。出現しなかった場合は。

    といったあたりは適当にした最低限のコードはこんな感じでしょうか。

    $src = 入力元ファイルのパス
    $dst = 出力先ファイルのパス
    [regex]::Matches((Get-Content $src), "[0-9]{13}") | Add-Content $dst
    2018年11月15日 13:44
  •  お世話になります。

    テキストはテキストファイルのことです。

    13桁が複数存在し、14桁以上の数字も存在します。

    数字は半角数字のみです。

    10進法以外とか小数点とか桁区切りのカンマとか考えなくて問題ありません。

    13桁の数字の途中に改行も入りません。

    「テキスト」に保存というのは単にその13桁の数字だけが記述されただけの「テキスト」になります。

    「テキスト」が既に存在していた場合は上書きします。

    13桁の数字というのが複数出現した場合は全て取得します。

    出現しなかった場合は取得しません。

    説明が不足しすぎで申し訳ありません。

    教えていただいたコードで機能するようです。

    勉強させていただきます。ありがとうございました。



    2018年11月15日 14:43