• 締切済み

1000個の文章から規則に従い複数の文字群体を抽出

こんにちは。 お世話になります。 商品のcsvがあります。商品説明文です。 ここから、「説明文」「サイズ表」「素材」「国」「白文字情報」の情報を抜き出したいです。 新たなデザインに切り替えるのですが、1000アイテムほどあるため、 仕組みを構築して、必要な情報のみをまず抜き出し、それを新しい レイアウトのHTMLタグを組み合わせようと思っています。 まずは抜き出したいのですが、手法が皆目見当がつきません。 よろしければ、ご教示いただけないでしょうか。 よろしくお願いいたします。 【抜き出し元】 <a href="http://item.rakuten.co.jp/shopname/c/0000000387/" target="_blank"><img src="http://image.rakuten.co.jp/shopname/cabinet/99999999/99999999/songbilong.jpg" border=0></a><BR><BR><table border="0" cellspacing="0" cellpadding="2"> <tr valign="top"> <td nowrap> <a href="http://item.rakuten.co.jp/shopname/c/0000000386/"> ギフト対応 </a> </td> <td> <img src="http://image.rakuten.co.jp/shopname/cabinet/raku_gift/img57886349.gif" alt="ラッピング対応" width="100" height="21" hspace="1"> <img src="http://image.rakuten.co.jp/shopname/cabinet/raku_gift/img57886347.gif" alt="のし対応" width="100" height="21" hspace="1"> <img src="http://image.rakuten.co.jp/shopname/cabinet/raku_gift/img57886348.gif" alt="のし記名可" width="100" height="21" hspace="1"> <img src="http://image.rakuten.co.jp/shopname/cabinet/raku_gift/img57886345.gif" alt="メッセージカード" width="100" height="21" hspace="1"> <img src="http://image.rakuten.co.jp/shopname/cabinet/raku_gift/img57886346.gif" alt="フリーメッセージ" width="100" height="21" hspace="1"> </td> </tr> </table> <BR><font size = 3 color = "magenta"> 【商品説明】<BR> </font> <font size =2 color = "deeppink"><b> <font size =3 color = "blue"></font><BR>とてもかわいい、スカートのような、<BR> デニムのオーバーオールです。<BR> 胸ポケット、裾、後ろポケットには、<BR> 刺しゅうやストーンが施され、<BR> 凝ったデザインになっています。<BR> 肩ひも、ウエストは調節可能です。<BR> </font></b> <BR> <P>【サイズ表】()は日本サイズ</P> <P><TABLE WIDTH="200" BORDER="1" CELLSPACING="2" CELLPADDING="0"> <TR> <TD WIDTH="16%"></TD> <TD WIDTH="16%"> <P><CENTER>68cm(70~75cm)</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>74cm(75~80cm)</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>80cm(80~85cm)</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>86cm(85~90cm)</CENTER></TD> </TR> <TR> <TD WIDTH="16%"> <P><CENTER>身丈</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>43cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>45cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>47cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>49cm</CENTER></TD> </TR> <TR> <TD WIDTH="16%"> <P><CENTER>身幅</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>24cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>25cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>26cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>27cm</CENTER></TD> </TR> <TR> </TABLE> <BR> 【素材】<BR><BR> 綿100%<BR> <BR> 【品質管理国・生産国】<BR><BR> ブラジル・イギリス<BR> <BR> <font size = 2 color = orangered face="HGS創英角ポップ体"> 【注意】 画面上と実物では多少色具合が<BR> 異なって見える場合もございます。<BR> ご了承ください。<BR> </font> <BR><BR><BR><BR><BR><BR><BR><font size="1" color="white">◆68cm◆74cm◆80cm◆86cm青・水色</font> 【抜出先】 (1) とてもかわいい、スカートのような、<BR> デニムのオーバーオールです。<BR> 胸ポケット、裾、後ろポケットには、<BR> 刺しゅうやストーンが施され、<BR> 凝ったデザインになっています。<BR> 肩ひも、ウエストは調節可能です。<BR> (2) ><TABLE WIDTH="200" BORDER="1" CELLSPACING="2" CELLPADDING="0"> <TR> <TD WIDTH="16%"></TD> <TD WIDTH="16%"> <P><CENTER>68cm(70~75cm)</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>74cm(75~80cm)</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>80cm(80~85cm)</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>86cm(85~90cm)</CENTER></TD> </TR> <TR> <TD WIDTH="16%"> <P><CENTER>身丈</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>43cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>45cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>47cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>49cm</CENTER></TD> </TR> <TR> <TD WIDTH="16%"> <P><CENTER>身幅</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>24cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>25cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>26cm</CENTER></TD> <TD WIDTH="17%"> <P><CENTER>27cm</CENTER></TD> </TR> <TR> </TABLE> (3) 綿100% (4) ブラジル・イギリス (5) ◆68cm◆74cm◆80cm◆86cm青・水色

みんなの回答

  • sora1515
  • ベストアンサー率58% (54/92)
回答No.1

こう抜き出したい。という質問のようですが 当たり前ですが『どういう条件』でこう抜き出したい。 と書かないと答えようがありません。『』が抜けています。 例 最初に現れた【商品説明】の次から【サイズ表】までを抽出<font>だけは省く。 最初に現れた【商品説明】の次から【サイズ表】までを抽出<BR>以外の全てのタグは省く。 <font size="1" color="white">の次から</font>前までを抽出 第一1つ例をもらえば全て応用なので仕様を全て書く必要もありません。 やりたい事を書くから全部作ってくれに聞こえます。学ぶ気0

ARIES10
質問者

お礼

うーん。 ある程度具体的に道筋が見えている場合、 「この部分が具現化できないから助けてほしい」と言えますが 今回のことに関しては、その道筋がまだ見えない状態だったので、 具体例の抜出元に対して、抜き出し文言を例示することによって、 求めている結果を示したつもりです。 ご指摘の条件の詳細として、同時にタグを省けるなら一緒に省いた方が それはよりよいですが、それはまた別の問題なので今回の質問をする上で 必須の条件だとは考えていませんでした。 これは自分で「正規表現」という単語をネットに見つけて、 特にこの質問と一緒にしなくても自分で解決できそうです。 なので、道筋が見えるきっかけでももらえたら質問を深化させることも できますが、まずは…という状態でした。 しかし、正規表現でタグをすべて消したところ、 かなりやりたいことへの残作業が減った感じなので、 またちょっと色々とやってみます。 お返事頂けて、その親切心に感謝いたします。 ですが、相手の状況などへの配慮をせずに「学ぶ気0」と言えてしまう あたりは、、、、いえ、やめておきます。 ありがとうございました。

ARIES10
質問者

補足

備忘的に… 正規表現の指定で<>で囲まれたものをすべて消去したところ、かなりさっぱりしました。 その後、抜き出したい項目のタイトルである【商品説明】、【素材】などをすべて「,」に変換し、エクセル標準機脳の区切り位置で「,」部分で区切ったところ、ある程度目的が達成され、 あとは愚直な単純作業×nを繰り返して、 目的のデータ抜出ができました。 サイズ表だけは<>タグ消去した時点でアウトなので、 ここだけは別途考えますが、 とりあえず目的達成できたので、回答を締め切らせて頂きます。

関連するQ&A

専門家に質問してみよう