[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『特定のランダム数字を消したいです』(めぉ )
テキスト文章の修正を行いたいのですが
(abc/●●●●●/1234567)
という文字列があり、●の中はランダム数字で5桁という決まりがあります。
その5桁数字をすべて削除したいのですが
一気に修正するようなやり方であったり関数?置換であったり
そういったものやアイデアはないでしょうか。
文字数が1万以上あり、今2千程手作業で消したのですが
2時間もかかりやってられなくなりました…。
また、(abc●●●)といった文字列で●はまたランダム数字なのですが
abc●●●をすべて消すというような作業も行いたいです。
どうにか知恵をお貸しください。
< 使用 アプリ:テキストエディダ、使用 OS:Windows10 >
(ひとつめのほう)
左から4文字 と 左から8文字 を結合する数式をかんがえてみてはどうでしょうか?
(ふたつめのほう)
abc* を置換して削ってはどうでしょうか
(もこな2) 2019/02/01(金) 10:50
(もこな2) 2019/02/01(金) 10:51
Excelとして回答すればいいんですかね?
■ (abc/●●●●●/1234567) これをどうしたいんですか?
(abc1234567) でいいのなら 範囲を選択して置換
検索する文字列:/*/ 置換後の文字列には何も指定せず「すべて置換」
■(abc●●●) これはどうしたいんですか? ( )だけ残す?
以上です (笑) 2019/02/01(金) 11:10
get-content ファイル名 | foreach { $_ -replace "abc/\d{5}/", "abc/" }
あと、これがHTML内のURLを更新するための作業ならば、相対パス指定を活用し、置き場所を変えても追従できるように書いておくと、手間がかかりませんよ。
(???) 2019/02/01(金) 11:15
(abc/●●●●●/1234567)
は
(abc/1234567)に修正したいです。
(abc●●●)
はもろとも消したいです。
●が桁数は変わらずですがランダム数字なので困っています。
「*」というのはどういう意味合いがあるのですか?
ランダム数字を「*」に当てはめることができるのでしょうか。
>(ひとつめのほう)
> 左から4文字 と 右から8文字 を結合する数式をかんがえてみてはどうでしょうか?
結合する書式というをが分からないです。
お聞きしたPowershellというのを調べて見ましたが
難しそうです…
今使っているのはサクラエディダというものです。
文章をエクセルに張り付けてもいじれるかと思います。
(めぉ ) 2019/02/01(金) 11:38
やっとエクセルという言葉がでてくれた・・・ こういう感じではだめですか?
|[A] |[B] |[C] [1]|(abc/●●●●●/1234567)|(abc/1234567)|B1=LEFT(A1,FIND("/",A1)-1)&MID(A1,FIND("/",A1,LEN(LEFT(A1,FIND("/",A1)))+1),100) [2]|(abc123) |(abc) |B2=LEFT(A2,AGGREGATE(15,6,FIND(ROW(1:10)-1,A2),1)-1)&RIGHT(A2) (稲葉) 2019/02/01(金) 11:57
PowerShellは、DOSじゃ機能不足になってきたので、unixの核と言えるShellをWindowsでも使えるようにしよう、って感じで追加されたものです。 コマンドプロンプトと同じようなもんですよ。 起動は WIN+X から行うと良いでしょう。
まぁ、私の書いた1行をコピペし、ファイル名を直すだけなので、試してみてください。 コマンドは豊富ですが、全部覚える必要なんて全然ないですから。(結果を別のファイルに出力する場合は、後ろに 「 > 出力ファイル名」を追加しましょう)
(???) 2019/02/01(金) 11:58
あくまでExcelとして回答します。
>(abc/1234567)に修正したいです。
範囲を選択して置換
検索する文字列: ?????/ ← / の前に「?」を5個 置換後の文字列には何も指定せず「すべて置換」
>(abc●●●) >はもろとも消したいです。
( )ごと消すってこと? で、abc以外はそのまま残すんですか?
検索する文字列:(abc*) 置換後の文字列には何も指定せず「すべて置換」
Excelで試してみてください。
以上 (笑) 2019/02/01(金) 12:00
get-content ファイル名 | foreach { $_ -replace "\(abc\d{3}\)", "" }
1つ目と2つ目を両方変換し、結果を別ファイル保存するようまとめると、以下。
get-content ファイル名 | foreach { $_ -replace "abc/\d{5}/", "abc/" } | foreach { $_ -replace "\(abc\d{3}\)", "" } > 出力ファイル名 (???) 2019/02/01(金) 13:00
>「*」というのはどういう意味合いがあるのですか?
>ランダム数字を「*」に当てはめることができるのでしょうか。
「*」や「?」ワイルドカードとして扱われます
https://dekiru.net/article/12584/
>結合する書式というをが分からないです。
「書式」ではなく「数式」です。
="あいう" & "えお" ↑ 「あいう」という文字列と「えお」という文字列を結合する「数式」です。
(もこな2) 2019/02/01(金) 13:16
置換前:abc/\d{5}/
置換後:abc/
置換前:\(abc\d{3}\)
置換後:
こんな感じで2回に分ける必要がありますが、指定する文字列は同じです。
(???) 2019/02/01(金) 14:28
一人でちまちま手作業で消しているときも「これ絶対すごい人なら一瞬で出来るはずなのに…><」
と思い誰かに助けてほしくて書き込みさせて頂きました。
いろいろと知恵をお貸しくださった皆様、ありがとうございました。
このような親切なスペシャリストの集まるサイトをこの度初めて知りました。
身内にも教えさせていただきたいと思います。
この度は本当に助かりました。ありがとうございます。
(めぉ ) 2019/02/01(金) 16:45
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.