ハマっている「お菓子」を教えて!

オークションの一括出品のCSVファイルのHTMLタグを利用しての商品説明をHTMLタグだけを取り除くフリーソフトなどはあるでしょうか? (サイズや、色などの、商品説明の本文のみを抽出する)。携帯用の商品説明に利用したいと思っています。
ご存知の方がいられましたら、教えてください。

A 回答 (5件)

本当に何度も何度もすみません。



『No.2の回答の置換処理を行った場合、~』

些細ですが、出だしから間違いがあったので次のように
訂正して読んでください。

「No.3の回答の置換処理を行った場合、~」

大変失礼しました。m(__;)m
    • good
    • 0

何回もすみません。


No.2の回答の置換処理を行った場合、ファイルの内容
によっては必要な'や"などのテキスト区切り文字や,
などのセルの区切り文字まで削除されてしまう場合が
あります。
(※問題が発生するのは、HTMLタグと商品説明などHTML
タグ以外の文字列が同じセルに含まれる場合で、かつ
HTMLタグが文字列より先に記述されている場合です。)

処理対象のCSVファイルは2500行程度で、列は一列だけ
なのでしょうか?
CSVファイルをテキストエディタで開いた場合、どのように
表示されますか?

'<table>'
'<tr><td></td><td>商品番号00101</td></tr>'
'<tr><td>製品写真</td><td><img src="***.jpg" width="***" height="***"></td></tr>'
'<tr><td>仕様</td><td>××:○○○<br>○△:○□□<br>※○△□</td></tr>'
'<tr><td>備考</td><td>マニュアル・オプション品完備</td></tr>'
'</table>'

上記のように一列しかない場合、回答No.3で紹介した
2回目の正規表現を次のように変更するだけで、HTML
タグだけを削除できるはずです。
※上記は'がテキスト区切り文字ですが、"の場合でも
大丈夫です。
※1回目~3回目まで順番に行いますが、<title>タグの
行がない場合は、1回目の置換処理は行う必要はあり
ません。

2回目(すべてのHTMLタグを削除します。※'や"などの
テキスト区切り文字は削除しません。)
置換前
<[^>]*>
置換後
空欄にする


※2列以上ある場合は、上手く削除されない場合もあり
ます。データが入っていない一部の不要な'や"、および
,などが残る場合は、3回目の処理まで完了した後で、
次の処理も続けて順番に行うと良いです。

・追加の処理1(2個連続している'または"を削除します)
置換前
[,:; \t]*['"]{2}[,:; \t]*
置換後
空欄にする

・追加の処理2('または"の間に足りない,などの区切り
文字を追加)
置換前
(['"])(['"])
置換後
$1,$2
※セルの区切り文字が,以外の場合は、「$1;$2」など
置換後をCSVファイルに合わせて変更してください。
    • good
    • 0

自動でHTMLタグを削除してくれるソフトがあるか


どうかは分かりません。
正規表現による置換を行えば、今よりは作業が楽に
なると思ってNo.2のソフトをご紹介しました。
2500行程度でしたら、サクラエディタで問題なく置換
可能ですし、ファイルを開いてから「検索」→「置換」
で操作するだけですので、サクラエディタを使って
みてください。
※置換のダイアログで「正規表現」にチェックします。
※必ずバックアップを取ってから作業してください。

No.2で紹介した正規表現では、場合によっては残して
置きたい'や"、改行タグなども一部削除されてしまう
場合がありますので、次の正規表現を用いてください。


・1回目(タイトルタグの行を削除します)
置換前
["' \t,:;]*<title>.*</title>["']?[ \s,:;]*
置換後
空欄にする

・2回目(HTMLタグとそのタグの直前にあるテキスト
区切り文字、セル区切り文字を削除します)
置換前
["' \t,:;]*<[^>]*>
置換後
空欄にする

・3回目(空行またはテキスト区切り文字またはセルの
区切り文字しかない行を削除します)
置換前
^['" \t,:;]*\s*$
置換後
空欄にする

上記の置換を順番に行いますが、ほとんど時間は掛か
りません。

<head>タグ内にスタイルシートのタグを記述している
場合は、スタイルシートの記述が残ってしまいます。
この場合は、次の2つも順番にそれぞれ置換前の欄に
入力して、置換してみてください。
(置換後の欄は空欄にします。)

[,:;"']*[ \t]*.*({|}|;)["',:;]*\s*

[,:;"']*[ \t]*(<!--|-->|})['",:;]*\s*

※ファイルの内容によっては、一部余分な記述が残る
かもしれませんが、その場合は手直しして試してみて
ください。


正規表現の実装状態はソフトによって異なりますので、
別のソフトを使った場合には、置換結果が異なる場合
があります。

・正規表現講座
http://www.sixnine.net/regexp/
※edからPerl互換の正規表現の解説をしています。

※サクラエディタはPerl互換で動作するようです。
他には、VxEditorもPerl互換の正規表現が使用でき
ます。
    • good
    • 0

HTMLタグをすべて削除してしまって良いのでしょうか?


正規表現を使用できるツールで置換すると良いです。
ファイルが一つしかない場合は、テキストエディタでも
十分だと思います。
※念のためにコピーを作成して置いた方が良いです。

・1回目
置換前
["' \t,:;]*<title>.*</title>["']?[ \s,:;]*
置換後
空欄にする

・2回目
置換前
["' \t,:;]*<[^>]*>["']?[ \s,:;]*
置換後
空欄にする

※区切り文字が分からないのですが、このような感じに
なります。("、'、空白、タブ、カンマ、コロン、セミコロン以外
の文字を使っている場合は、適当に追加して下さい。)


サクラエディタで可能でしたが、その他のソフトでは
若干違う場合もあります。
「サクラエディタ」
http://sakura_editor.at.infoseek.co.jp/
※HEADタグ内に内部スタイルシートの記述がある場合は、
下で紹介しているツールを使用してください。
上に書いた処理だけで行う場合に、サクラエディタでは
内部スタイルシートの記述が残ってしまいます。
※外部スタイルシート読み込みの場合は大丈夫です。


「Speeeeed」を使用すると、複数のファイルを一括処理
できます。
http://www.vector.co.jp/soft/win95/util/se142895 …
※置換えリスト編集で1回目の処理の分を上に登録して
ください。
※「追加」ボタンを押して「全てのファイル」を選択すると
CSVファイルも追加できます。
※正規表現を使用するには、「BREGEXP.DLL」が必要です。
http://www.hi-ho.ne.jp/babaq/bregexp.html
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
エクセルで、複数行たとえば2500行くらいの一列のタグと空欄を削除してしまいたいのですが、難しいですね。
紹介していただいた、ソフトを見てみましたが、わかりませんでした。
どれかが、このような削除方法ができるのでしょうか?
ご存知でしたら、教えて下さい。

お礼日時:2008/11/11 16:54

こんにちは



意図と合うかわからないですけど、置換してしまえば良いのでは?
例:http*→空欄に置換
ツールはワイルドカードが使えるソフト
例えばexcelでもできると思います。

では。
    • good
    • 0
この回答へのお礼

EXCELで置換をしていましたが、タグを全部置換をするには、とても大変で・・。
ご回答ありがとうございました。

お礼日時:2008/11/11 16:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報