初めての質問で初歩的なことですみません。
どうぞご教示ください。
1000行以上のテキストデータ(htmlのソース)に
100行ほどのhttpではじまるURLがあります。
このURL以外を消したいのです。
テキストエディターの正規表現の否定になると思ったのですが
で何度やってもうまくいきません。。。。
どうぞ宜しくお願いいたします。
--------------------------
<サンプル(テキストエディターにて)>
aaaaaaa
b121212
ccc
http........................................... ←これだけを残したい
xxxxxxxxxxxxxxxx123123
y45646
z78979
http........................................... ←これだけを残したい
・
・
・
--------------------------
No.6ベストアンサー
- 回答日時:
EmEditorは、UNIX系のPOSIXより拡張されたPerl並みの正規表現がそのまま利用できますから、その手法で行くと、特殊な手法は必要なくごく普通に
検索する文字列
^(?!http:)[^\n]*\n
置換する文字列
は記入しない
で置換できるはずです。
POSIX系の正規表現が扱えるテキストエディタでしたら、
ありがとうございます。できました!!!!
なかなか手持ちのアプリケーションでできなくて、いろんなフリーソフトを
昨夜山のようにDLしましたが、さっぱりできず途方にくれていました。。。
これで今日の作業が朝から叶います!!!本当に感謝します!!
みなさんに感謝いたしますが、
私の手持ちのEmEditorでご回答いただきましたORUKA1951様をベストアンサーとさせていただきます。
本当にありがとうございました。
No.5
- 回答日時:
>『vivi』と『Em-editor』
いや~、あいにく両方共まったく見たことも触ったこともないので何とも…。自分はもう10年来、テキスト系は『秀丸』オンリーの環境なので。
ただエディタが環境が変わっても正規表現は変わらないと思うので、前述の例文で通らなければ、何かそちらの環境のみの特殊な事情があるのかな?もしかしてUNIX系?だとしたら自分にはお手上げです。
あ、もしかしたら例文の正規表現の文末の「\n」を削れば通るかも?
P.S.
ここの解説によれば少なくとも『Em-editor』には正規表現で否定マッチが可能みたいなので、
>http://jp.emeditor.com/help/howto/search/search_ …
…何か色々やれば出来るとは思うんですが。
P.P.S.
何人かの回答者が提示してる様に、perlとかphpみたいなテキストを直に弄れる系の環境が走ってるのなら。そっちを利用した方が、特に項目数やファイル数が多い場合は便利かと思います。エディタ系内蔵の正規表現だと、何かと制限が付いてる場合も多いので。
他には自分も『秀丸』でよく使うイカサマ手法ですが。1回の置換で全てをやろうと思わない事。2回~3回に分けて、段階的に置換処理を適用させて、最終的に自分の欲しい結果にする方法です。
再度のご回答本当にありがとうございます。
大変お手数おかけして、感謝するばかりです。
はい、頂いた例文をもとに
>例文の正規表現の文末の「\n」を削れば通るかも?
も試してみたのですが、同じメッセージがでてしまいました。
Webで調べつつ頂いた例文を解読改良しながら試してみたのですが
私の能力では無理でした。。情けない。。
今後に向けて正規表現ももっと勉強しなくてはいけませんね。
お話本当に勉強になりました。
心より感謝申し上げます。ありがとうございました。
No.4
- 回答日時:
コマンドプロンプトで、
findstr /b http 入力ファイル >出力ファイル
No.3
- 回答日時:
SED(steam editor)の仕事だと思いますが、perlだと配列に読み込んで
open(IN,"in.txt");
open(OUT,"out.txt");
while(<IN>) {
if(m#^http://#){
print OUT $_;
}
}
close(IN);
close(OUT);
SEDだと、
sed -n -e '/^http:/p' /out.txt | more
で数万行あっても一瞬で終わる。
ありがとうございます!
Sed未経験でしてフリーのソフトをDLしたりしてみたのですが
windows8に合うものがなく、実現できませんでした。。
今度触れる機会がありましたら、やってみたいと思います。
勉強になりました。
丁寧なご回答ありがとうございました。
No.2
- 回答日時:
正規表現で否定マッチさせるのなら、
^(?!http).+\n
~これで「行頭がhttpで始まる以外の文字列」にマッチすると思われ…。つまりこれでマッチした文字列を削除すれば、後にはhttp~だけが残る…はず?
この回答への補足
早速ありがとうございます。
早速試してみたのですが、うまくいきませんでした。。
「検索文字列が無効です」と出てしまいます。
きっと4017Bさんの環境ではうまくいくのですよね。すみません。。
お使いのテキストエディターを宜しければ教えていただけないでしょうか?
私はフリーのテキストエディタのviviとEm-editorを使っております。
ご面倒おかけいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 【GAS】WEBアプリでハイパーリンクを挿入したい 1 2023/03/12 19:20
- UNIX・Linux Ubuntu22.04、nanoエディタの使い方について 2 2022/10/24 19:50
- Excel(エクセル) 数式をおしえてください 3 2022/09/05 21:51
- JavaScript 空白で入力フォームのボタンをクリックしたら、ブラウザの上部からjavascriptで 表示されるアラ 1 2022/05/20 11:16
- 大学受験 資格試験などの勉強で過去問題集の解説を理解する時、分からない用語を調べてどうするのが良いですか? 問 3 2023/06/18 17:18
- HTML・CSS GETをPOSTに変更したところ 送信 不能です。 1 2022/04/10 17:31
- Access(アクセス) Accessのデータ型の日付/時刻型について 2 2023/02/14 07:40
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Excel(エクセル) Excelで数式をそのままコピーしたい どうすればいいですか? 4 2022/09/16 02:16
- FC2ブログ テキスト版からURLも表示できるように設定できないのでしょうか。 ブログにURLを載せようとしたら文 2 2023/02/12 11:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 置換文字がみつからない時
-
住所編集のマクロを組んでいて...
-
GoogleAppsScript文字列置換の...
-
正規表現でURLを抽出したいと思...
-
【Excel VBA】文字列の置換作業...
-
C#で空白行を削除する方法
-
テキストファイル中の文字列の置換
-
置換した文字色の変更
-
C言語でテキストファイルの内容...
-
csvデータ ダブルクォーテ...
-
word オートシェイプ内も一括変換
-
特定の列のみ置換を行いたい
-
procmailで本文の文字列置換
-
秀丸で数字だけの行を削除したい
-
EXCEL警告「置換対象のデータが...
-
各項目がダブルクォーテーショ...
-
ハングルを日本語に置換
-
\\(円)記号を置換したい
-
サクラエディタ 数字だけを置...
-
正規表現で一括置換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
各項目がダブルクォーテーショ...
-
VBA 置換文字がみつからない時
-
正規表現で、特定の文字列を含...
-
スペースで区切られた氏名から...
-
csvデータのダブルクォーテーシ...
-
csvデータ ダブルクォーテ...
-
GoogleAppsScript文字列置換の...
-
C言語でテキストファイルの内容...
-
正規表現 特定の文字列を含む行...
-
テキストボックスの文字列を置...
-
EXCEL警告「置換対象のデータが...
-
TeraPadエディターの操作方法に...
-
xmlファイル内の文字列置換
-
python 大文字小文字を区別しな...
-
C#で空白行を削除する方法
-
テキストファイル中の文字列の置換
-
Excel VBA 教えてください。 VB...
-
ハングルを日本語に置換
-
EXCEL VBA でCTRL+Fのダイア...
-
PowerShellでテキストの空白行...
おすすめ情報