• 締切済み

Ruby 正規表現と置換

こんにちは。 Rubyで正規表現で見つかった箇所の文字列を置換するプログラムを書いているのですが、 一部うまく作動せず、その原因が分からないため質問させていただきました。 以下プログラムの置換の部分になります。 49 case text 50 when /株式数(株)\t貸借対照表計上額(千円)|株式数(株)\t貸借対照表計上額(千円)/ 51 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1}株\t#{$3},000円\t"} 52 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 53 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t(\d{1})/){|s| "#{$1}株\t#{$3}円\t"} 54 when/百万円/ 55 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)/) {|s| "#{$1}株\t#{$3},000,000円\t"} 56 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 57 when /株式数(株)\t貸借対照表計上額(百万円)/ 58 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)/) {|s| "#{$1}株\t#{$3},000,000円\t"} 59 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 60 when /株式数(株)\t貸借対照表計上額(百万円)/ 61 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1}株\t#{$3},000,000円\t"} 62 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 63 when /株式数(1000株)\t貸借対照表計上額(百万円)/ 64 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1},000株\t#{$3},000,000円\t"} 65 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 66 when /株式数(1000株)\t貸借対照表計上額(百万円)/ 67 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1},000株\t#{$3},000,000円\t"} 68 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 69 when/株式数(1000株)\t貸借対照表計上額(百万円)/ 70 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1},000株\t#{$3},000,000円\t"} 71 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 72 when/株式数(1000株)\t貸借対照表計上額(百万円)/ 73 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1},000株\t#{$3},000,000円\t"} 74 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 75 when/株式数(株) 貸借対照表計上額(百万円)/ 76 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1},株\t#{$3},000,000円\t"} 77 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 78 when/株式数(株) 貸借対照表計上額(百万円)/ 79 text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1},株\t#{$3},000,000円\t"} 80 text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} 81 end 以下は今のプログラムで出てくる結果です。 1つ目の数字の後ろに「株」、2つ目の数字の後ろに「,000円」がついています。 ハ保有目的が純投資目的である投資株式の前事業年度及び当事業年度における貸借対照表計上額の合計額並びに当事業年度における受取配当金、売却損益及び評価損益の合計額(a)保有目的が純投資目的以外の目的である投資株式銘柄数58銘柄貸借対照表計上額の合計額6,915百万円(b)保有目的が純投資目的以外の目的である投資株式の保有区分、銘柄、株式数、貸借対照表計上額および保有目的(前事業年度)特定投資株式 前事業年度 銘   柄 株式数(株) 貸借対照表計上額(百万円) 保有目的 (株)髙島屋 1,594,657株 1,527,000円 事業上の関係の維持・強化 トヨタ自動車(株) 220,804株 1,327,000円 事業上の関係の維持・強化 (株)みずほフィナンシャルグループ 3,295,570株 642,000円 取引銀行との関係の維持・強化 ヒューリック(株) 638,400株 552,000円 事業上の関係の維持・強化 住友商事(株) 229,198株 294,000円 事業上の関係の維持・強化 (株)三菱UFJフィナンシャル・グループ 457,750株 272,000円 取引銀行との関係の維持・強化 阪急阪神ホールディングス(株) 316,400株 170,000円 事業上の関係の維持・強化 (株)クラレ 86,250株 125,000円 事業上の関係の維持・強化 積水ハウス(株) 90,950株 120,000円 事業上の関係の維持・強化 東海旅客鉄道(株) 10,000株 112,000円 事業上の関係の維持・強化 (株)池田泉州ホールディングス 206,963株 102,000円 取引銀行との関係の維持・強化 帝人(株) 425,000株 99,000円 事業上の関係の維持・強化 東レ(株) 140,000株 98,000円 事業上の関係の維持・強化 (株)滋賀銀行 181,020株 96,000円 取引銀行との関係の維持・強化 ダイニック(株) 459,000株 81,000円 事業上の関係の維持・強化 三井住友トラスト・ホールディングス(株) 187,568株 80,000円 取引銀行との関係の維持・強化 東日本旅客鉄道(株) 10,000株 75,000円 事業上の関係の維持・強化 近畿日本鉄道(株) 155,455株 65,000円 事業上の関係の維持・強化 長瀬産業(株) 47,124株 62,000円 事業上の関係の維持・強化 ユニチカ(株) 1,013,200株 58,000円 事業上の関係の維持・強化 (株)南都銀行 154,532株 58,000円 取引銀行との関係の維持・強化 本田技研工業(株) 12,245株 46,000円 事業上の関係の維持・強化 西日本旅客鉄道(株) 10,000株 42,000円 事業上の関係の維持・強化 イオン(株) 32,149株 38,000円 事業上の関係の維持・強化 コニカミノルタホールディングス(株) 51,000株 37,000円 事業上の関係の維持・強化 本来ならば「,000円」ではなく「,000,000円」を付加して出力するはずなのですが うまく動作せず「,000円」が付加されてしまっています。 どこを直せば正しく動作するでしょうか? ご教授の程よろしくお願いします。

  • Ruby
  • 回答数1
  • ありがとう数10

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

http://okwave.jp/qa/q8839168.html でも書いたのですが「理由をはっきりさせましょう」 プログラムを書く技術も必要ですが、それ以上に「正しく動作するかを確認する」「期待通りでない場合、その原因を調査解析し修正する」技術が大事です。 今回の例だと ・期待している when ではないwhen節が実行されている。または、どの条件にも当て嵌まらない。 ・gsub!による置換が期待通りではない。 が主要因になりそうだ、と予想します。 そうなったら、デバッガや途中経過表示を使って ・textの内容と、実行されるwhenとが期待通りかを確認する ・gsub前と後のtextを比較して、期待通りの置換になっているかを確認する もし、whenの不一致が理由なら、期待したwhenに合致するようにプログラムを変更します。 もし、gsubの置換が理由なら、期待した置換になるようにプログラムを変更します。 例えば when /株式数(株)\t貸借対照表計上額(千円)|株式数(株)\t貸借対照表計上額(千円)/ STDERR.printf("when:%d:text:%s:\n",1,text) text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t([1-9]\d{0,2}(,\d{3})*)\t/) {|s| "#{$1}株\t#{$3},000円\t"} STDERR.printf("gsub後:%s:\n",text) text.gsub!(/([1-9]\d{0,3})\t(\d{1})/){|s| "#{$1}株\t#{$2}円\t"} STDERR.printf("gsub後:%s:\n",text) text.gsub!(/([1-9]\d{0,2}(,\d{3})*)\t(\d{1})/){|s| "#{$1}株\t#{$3}円\t"} STDERR.printf("gsub後:%s:\n",text) とすれば、 このwhenにマッチしたときの処理の様子がわかります。 とりあえず気付いたのは ○whenは上から順番の評価され、最初にマッチしたものが使われます。 when/百万円/ が先に書いてあると、「百万円」を含むものは全てこちらになるため、 when /株式数(株)\t貸借対照表計上額(百万円)/ 等は絶対にマッチしません。 ○もしかして、textはファイル全体ですか? 株式数(株)\t貸借対照表計上額(千円) データ1 株式数(株)\t貸借対照表計上額(百万円 データ2 が全部一つになっているものだったら、 データ2の部分も「千円」として全部処理されます。

関連するQ&A

  • Ruby 正規表現で特定の文字を取得・挿入

    こんにちは。 当方Ruby初心者です。 HTMLからの正規表現による文字列の取得のプログラムを組んでいたのですが、 分からない所があったため質問させていただきました。 やりたいことは、以下の数字の文字列の後ろにそれぞれ「株」と「,000円」という文字を追加することです。 全ての数字の後ろに株、もしくは,000円を追加する事はできるのですが、個別に追加することができません。 どうかお力添えをお願いいたします。 前事業年度 銘   柄 株式数(株) 貸借対照表計上額(千円) 保有目的   株式会社エイチーム 200,400円株 722,442  関係強化   株式会社ケイブ 150 15,900  関係強化    当事業年度 銘   柄 株式数(株) 貸借対照表計上額(千円) 保有目的   株式会社エイチーム 125,300 697,921  関係強化   株式会社ケイブ 5,000 8,475  関係強化 以下プログラムです。 if text.match('株式数(株) 貸借対照表計上額(千円)') 28 text.gsub!(/\d[0-9]*?,\d[0-9]+|\d[0-9]+/) {$&.concat('株')} 29 text.gsub!(/\d[0-9]*?,\d[0-9]+|\d[0-9]+/) {|s1| s1.concat('株')} 30 else if text.match('株式数(1000株)') 31 text.sub!(/\d[0-9]+,\d[0-9]+/) {|s| s.concat(',000株')} 32 end 33 end 34 print text

    • ベストアンサー
    • Ruby
  • Ruby 文字の挿入(置換)

    こんにちは。 最近Rubyでスクローリングをしているのですが、その中で文字の挿入をする場面がありました。 今現在はgsub!を用いた置換で無理矢理くっつける形を取っているのですが、 どうも効率が悪く、汎用性に欠けるような気がします。 何かもっといい方法があるのでしょうか。 曖昧な質問で申し訳ありませんが、よろしくお願いします。 以下プログラムになります。 57 when /株式数(株)\t貸借対照表計上額(千円)|株式数(株)\t貸借対照表計上額(千円)/ 58 while text.match(/\d[0-9]*?\t/) 59 text.sub!(/\d[0-9]*?\t/){|s|s.concat("株1")} 60 text.sub!(/\t株1/,"株q") 61 text.sub!(/\d[0-9]*?\t/){|s|s.concat("円")} 62 text.sub!(/\t円/,",000円q") 63 end 64 text.gsub!(/q/,"\t") 改変しようとする部分の原文は以下のような文章です。 当事業年度 銘   柄 株式数(株) 貸借対照表計上額(百万円) 保有目的 (株)ナガホリ  192,000  47 取引の円滑化 (株)東日本銀行  181,000  45 取引の円滑化 (株)大垣共立銀行  99,000  27 取引の円滑化 イオン九州(株)  16,027  25 取引の円滑化 (株)名古屋銀行  37,000  14取引の円滑化 (株)みずほフィナンシャルグループ  63,800  13 取引の円滑化 (株)三菱UFJフィナンシャル・グループ  22,700  12 取引の円滑化 (株)桑山  8,800株  5,000,000円 取引の円滑化

  • Ruby 改行文字の挿入

    こんばんは。 Rubyにおいて、改行の無いhtmlファイル(/home/edinet/**/*.html)を読み込む際に先に改行文字を入れておき、10~15行目の正規表現の通りに文字列を取得したいと考えています。 下記のままのプログラムだと改行が無いhtmlファイルであるため余計な部分まで取得してしまいます。 以下例になります。 ”中外製薬(株) 100株 0,000,000円 情報収集のため”の部分の後に指定した普通株式という文字があるにもかかわらずそれ以降も取得してしまっています。 当事業年度 銘   柄 株式数(株) 貸借対照表計上額(百万円) 保有目的 大正製薬ホールディングス(株) 300,000株 2,493,000,000円 取引関係の強化のため 日本水産(株) 8,000,000株 1,736,000,000円 取引関係の強化のため 大日本住友製薬(株) 913,000株 1,497,000,000円 取引関係の強化のため JCRファーマ(株) 550,000株 1,303,000,000円 取引関係の強化のため アルフレッサホールディングス(株) 176,900株 1,190,000,000円 取引関係の強化のため (株)スズケン 157,200株 628,000,000円 取引関係の強化のため 東邦ホールディングス(株) 243,400株 531,000,000円 取引関係の強化のため (株)メディパルホールディングス 319,100株 503,000,000円 取引関係の強化のため コニカミノルタ(株) 445,000株 428,000,000円 取引関係の強化のため (株)三菱UFJフィナンシャル・グループ 611,000株 346,000,000円 取引関係の強化のため (株)ほくやく・竹山ホールディングス 251,500株 176,000,000円 取引関係の強化のため (株)みずほフィナンシャルグループ 504,080株 102,000,000円 取引関係の強化のため (株)バイタルケーエスケー・ホールディングス 99,600株 77,000,000円 取引関係の強化のため イワキ(株) 29,000株 5,000,000円 取引関係の強化のため 塩野義製薬(株) 1,000株 1,000,000円 情報収集のため 田辺三菱製薬(株) 1,000株 1,000,000円 情報収集のため 小野薬品工業(株) 100株 0,000,000円 情報収集のため (株)三菱ケミカルホールディングス 1,500株 0,000,000円 情報収集のため アステラス製薬(株) 100株 0,000,000円 情報収集のため 武田薬品工業(株) 100株 0,000,000円 情報収集のため エーザイ(株) 100株 0,000,000円 情報収集のため 第一三共(株) 200株 0,000,000円 情報収集のため 中外製薬(株) 100株 0,000,000円 情報収集のため 普通株式 296,000,000株 計 296,000,000,000,000円 普通株式 132,891,217株 132,891,217,000,000円 東京証券取引所(市場第一部) 単元株式数1,000株 計 132,891,217株 132,891,217,000,000円 ― ― 平成14年8月2日(注) ― 132,891株 ― 26,137,000,000円 △8,735株 22,454,000,000円 政府及び地方公共団体 金融機関 金融商品取引業者 その他の法人 外国法人等 個人その他 計 個人以外 個人 株主数(人) ― 48株 38,000,000円 273株 130,000,000円 19株 18,939,000,000円 19,447株 ― 所有株式数(単元) ― 21,507,000,000円 1,088株 34,172,000,000円 26,219株 22,000,000円 48,527株 131,535,000,000円 1,356,217株 所有株式数の割合(%) ― 16.35,000,000円 0.83株 25.98,000,000円 19.93株 0.02,000,000円 36.89株 100.00,000,000円 ― 以下のメソッドでそういった事をしようとする場合、どのようにして入れれば良いのでしょうか? File.openとeach_line、gsub!を用いて置換して挿入する方法では上手く取得することができませんでした。 以下プログラムになります。 1 text = "" 2 3 data = Dir.glob("/home/edinet/**/*.html") 4 5 data.each do |find| 6 7 flag = nil 8 IO.foreach(find) do |line2| 9 10 case line2 11 when /保有目的が純投資目的以外の目的である投資株式の保有区分、銘柄、株式数、貸借対照表計上額及び保有目/ 12 flag = true 13 when /保有目的が純投資目的である投資株式の前事業年度|保有目的が純投資目的|普通株式/ 14 flag = false 15 end 16 17 text << line2.chomp if flag == true 18 19 end 20 21 22 23 text.gsub!(/<\/td>/,"\t") 24 text.gsub!(/<\/tr>/,"\n") 25 text.gsub!(/<[^>]+>/,"") 26 27 text.gsub!(/前事業年度特定投資株式/,"前事業年度") 28 text.gsub!(/当事業年度特定投資株式/,"当事業年度") 29 text.gsub!(/前事業年度  特定投資株式/,"前事業年度") 30 text.gsub!(/当事業年度  特定投資株式/,"当事業年度") 31 text.gsub!(/前事業年度\t\t\t\t\n銘   柄/,"\n前事業年度\t銘   柄") 32 text.gsub!(/当事業年度\t\t\t\t\n銘   柄/,"\n当事業年度\t銘   柄") 33 text.gsub!(/^.*nbsp.*/,"") 34 text.sub!(/銘柄\t株式数/,"\t\t\t\t\n前事業年度\t銘   柄\t株式数") 35 text.sub!(/銘柄\t株式数/,"\t\t\t\t\n当事業年度\t銘   柄\t株式数") 36 text.sub!(/銘柄\t株式数/,"\t\t\t\t\n前事業年度\t銘   柄\t株式数") 37 text.sub!(/銘柄\t株式数/,"\t\t\t\t\n当事業年度\t銘   柄\t株式数") 38 text.gsub!(/前事業年度 特定投資株式/,"") 39 text.gsub!(/当事業年度 特定投資株式/,"") 40 41 print text ご回答の程よろしくお願いいたします。

    • ベストアンサー
    • Ruby
  • Rubyの正規表現、文字の追加

    こんばんは。 文章の先頭に指定した文字列を指定した箇所(文頭)のみに追加したいと思っているのですが、 どうもうまくいかないため質問させていただきました。 (1)全角英数字を正規表現で取得できていない (2)unless文の後の条件の複数指定が機能せずエラーになる (3)sub!で置換する以外に文字の追加方法はないか (4)unlessで条件指定しない場合、すべての行の頭に「当事業年度」という文字がついてしまう 上記4つがうまくいっていない要因です。 (3)に関してはinsertを他の手段として考えています。 以下プログラムです。 text.each_line do |t| 56 57 case t 58 when/前事業年度\t銘   柄/ 59 flag = true 60 when/前事業年度\t当事業年度/ 61 flag = false if flag == true 62 end 63 64 t.sub!(/^(\p{Katakana}|[一-龠々]|\w|(株)|\p{Hiragana}|[:upper:]{0,20}[1-9])/) {|d| "前事業年度\t#{$1}"} unless flag == false && /当事業年度/ 65 t.sub!(/^(\p{Katakana}|[一-龠々]|\w|(株)|\p{Hiragana}|[:upper:]{0,20}[1-9])/) {|d| "当事業年度\t#{$1}"} unless flag == false && /前事業年度/ 変換したい文章は以下のものです。 前事業年度 銘   柄 株式数(株) 貸借対照表計上額(百万円) 保有目的 株式会社日本触媒 6,338,000株 7,726,000,000円 当社グループの主要原料供給元であり、取引関係強化の一環として保有している。 ユニ・チャーム株式会社 278,100株 1,533,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 栗田工業株式会社 572,600株 1,282,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 JXホールディングス株式会社 2,477,050株 1,231,000,000円 当社グループ製品の販売先および主要原料供給元である企業の持株会社であり、取引関係強化の一環として保有している。 KPXChemical 158,621株 967,000,000円 KPXChemical設立時に出資しており、協力関係維持のため保有している。 株式会社ブリヂストン 194,000株 710,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 関西ペイント株式会社 214,225株 315,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有(取引先持株会による定期買付)している。 当事業年度 銘   柄 株式数(株) 貸借対照表計上額(百万円) 保有目的 KPXHoldings 58,990株 284,000,000円 上記KPXChemicalの株式を40%保有する大株主であり、協力関係強化のため保有している。 大日精化工業株式会社 524,000株 250,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 高圧ガス工業株式会社 424,000株 241,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 サカタインクス株式会社 202,000株 196,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。地元企業との関係強化のため保有している。 株式会社松風 138,000株 120,000,000円 地元企業との関係強化のため保有している。 コニシ株式会社 50,000株 91,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 稲畑産業株式会社 66,000株 69,000,000円 当社グループ製品の販売および原料購入における代理店であり、取引関係強化の一環として保有している。 日本特殊塗料株式会社 112,000株 68,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 電気化学工業株式会社 142,000株 50,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 株式会社三菱ケミカルホールディングス 104,500株 44,000,000円 当社グループ製品の販売先および主要原料供給元である企業の持株会社であり、取引関係強化の一環として保有している。 長瀬産業株式会社 31,000株 39,000,000円 当社グループ製品の販売および原料購入における代理店であり、取引関係強化の一環として保有している。 横浜ゴム株式会社 36,000株 34,000,000円 当社グループ製品の販売先であり、取引関係強化の一環として保有している。 前事業年度から下の7行の文頭に「前事業年度」という文字を追加し、 当事業年度から下の行の文頭に「当事業年度」という文字を追加することが目標です。 どうかご教授のほどよろしくお願いいたします。

  • Ruby 正規表現による文字列取得

    こんにちは。 何度か質問させていただいていたのですが、正規表現を使っても正しく取得できない部分があったので質問させていただきました。 取得したい文字列の部分にflagをたてて、そこからfalseになるまで取得し続ける形をとっているのですが、どうもfalseになってbreakするはずの部分で取得を終了してくれません。 どう直せば良いのでしょうか?ご教授お願い致します。 プログラムは以下の通りです。 2 text = "" 3 4 data = "/home/edinet/E05267/S1001YX6/index.html" 5 6 flag = nil 7 IO.foreach(data) do |line2| 8 line2.gsub!(/普通株式/,"\nEOF") 9 case line2 10 when /保有目的が純投資目的以外の目的である投資株式の保有区分|保有目的が純投資目的以外/ 11 flag = true 12 13 when /保有目的が純投資目的である投資株式の前事業年度|EOF|無議決権株式|政府及び地方公共団体|調 整 後 転 換 価 額|保有目的が純投資目的|普通株式|監査報酬の内容等/ 14 flag = false if flag == true 15 16 end 17 18 text << line2.chomp if flag != nil 19 break if flag == false 20 21 end 22 text.gsub!(/<\/td>/,"\t") 23 text.gsub!(/<\/tr>/,"\n") 24 text.gsub!(/<[^>]+>/,"") 25 print text 実行結果 ロ 保有目的が純投資目的以外の目的である投資株式の保有区分、銘柄、株式数、貸借対照表計上額及び保有目的&nbsp;(前事業年度)特定投資株式銘柄 株式数(株) 貸借対照表計上額(千円) 保有目的 アイサンテクノロジー株式会社 50,000 11,150 取引関係の維持強化 セイコーエプソン株式会社 10,000 9,130 取引関係の維持強化 株式会社トプコン 10,000 8,570 取引関係の維持強化 株式会社大和証券グループ本社 10,000 6,560 取引関係の維持強化 株式会社八十二銀行 10,000 5,690 取引関係の維持強化 佐田建設株式会社 60,000 4,500 取引関係の維持強化 &nbsp;&nbsp;(当事業年度)特定投資株式銘柄 株式数(株) 貸借対照表計上額(千円) 保有目的 アイサンテクノロジー株式会社 50,000 43,900 取引関係の維持強化 セイコーエプソン株式会社 10,000 32,100 取引関係の維持強化 株式会社トプコン 10,000 16,920 取引関係の維持強化 株式会社大和証券グループ本社 10,000 8,980 取引関係の維持強化 福井コンピュータホールディングス株式会社 10,000 8,650 取引関係の維持強化 株式会社八十二銀行 10,000 5,870 取引関係の維持強化 &nbsp;&nbsp;ハ&nbsp; 保有目的が純投資目的である投資株式該当事項はありません。&nbsp;(6) 会計監査の状況当社は、金融商品取引法監査について有限責任監査法人トーマツより継続的に監査を受けており、正確な経営情報・財務情報の提供に配慮しております。業務を執行した公認会計士の氏名 所属する監査法人 指定有限責任社員 業務執行社員 五十幡 理一郎 有限責任監査法人トーマツ 指定有限責任社員 業務執行社員 小&nbsp; 松&nbsp;&nbsp;&nbsp;&nbsp; 聡 有限責任監査法人トーマツ &nbsp;継続関与年数については、7年以内であるため記載を省略しております。また、公認会計士4名、その他2名が会計監査業務に関っております。&nbsp;&nbsp;(7) 取締役会で決議することができる株主総会決議事項(自己の株式の取得)当社は、経営環境の変化に対応した機動的な資本政策を行うため、会社法第165条第2項の規定により、「取締役会の決議によって市場取引等により自己の株式を取得することができる。」旨を定款に定めております。&nbsp;(中間配当)当社は、株主への機動的な利益還元を行うため、会社法第454条第5項の規定により、「取締役会の決議によって、毎年9月30日を基準日として、中間配当を行うことができる。」旨を定款に定めております。&nbsp;(8) 取締役の定数当社の取締役は、「7名以内とする。」旨を定款に定めております。&nbsp;(9) 取締役の選任の決議要件当社は、取締役の選任決議について、「株主総会において議決権を行使することができる株主の議決権の3分の1以上を有する株主が出席し、その議決権の過半数をもって行い、かつ累積投票によらない。」旨を定款に定めております。&nbsp;(10) 株主総会の特別決議要件当社は、株主総会における特別決議の定足数を緩和することにより、株主総会の円滑な運営を行うため、会社法第309条第2項に定める株主総会の特別決議要件について、「議決権を行使することができる株主の議決権の3分の1以上を有する株主が出席し、その議決権の3分の2以上をもって行う。」旨を定款に定めております。&nbsp;(2) 【監査報酬の内容等】&nbsp;(1) 【監査公認会計士等に対する報酬の内容】前事業年度 当事業年度 監査証明業務に基づく報酬(千円) 非監査業務に基づく報酬(千円) 監査証明業務に基づく報酬(千円) 非監査業務に基づく報酬(千円) 14,600 ─ 14,600 500 &nbsp;&nbsp;(2) 【その他重要な報酬の内容】該当事項はありません。&nbsp;(3) 【監査公認会計士等の提出会社に対する非監査業務の内容】前事業年度該当事項はありません。&nbsp;当事業年度当社は監査公認会計士等に対して、公認会計士法第2条1項の監査証明業務以外の業務である内部管理体制の整備に関する助言・指導業務について対価を支払っております。&nbsp;(4) 【監査報酬の決定方針】当社の監査法人に対する監査報酬の決定方針としましては、事前に見積書の提示を受け、監査日数、監査内容及び当社の規模等を総合的に勘案し、監査役会及び関連部門と協議を行ったうえ決定することとしております。&nbsp;第5 【経理の状況】&nbsp;1.財務諸表の作成方法について当社の財務諸表は、「財務諸表等の用語、様式及び作成方法に関する規則」(昭和38年大蔵省令第59号。以下「財務諸表等規則」という。)に基づいて作成しております。 なお、当事業年度(平成25年4月1日から平成26年3月31日まで)の財務諸表に含まれる比較情報については、「財務諸表等の用語、様式及び作成方法に関する規則等の一部を改正する内閣府令」(平成24年9月21日内閣府令第61号)附則第2条第2項により、改正前の財務諸表等規則に基づいて作成しております。&nbsp;2.監査証明について当社は、金融商品取引法第193条の2第1項の規定に基づき、事業年度(平成25年4月1日から平成26年3月31日まで)の財務諸表について、有限責任監査法人トーマツにより監査を受けております。&nbsp;3.連結財務諸表について当社は子会社がありませんので、連結財務諸表を作成しておりません。&nbsp;4.財務諸表等の適正性を確保するための特段の取組みについて当社は、財務諸表等の適正性を確保するための特段の取組みを行っております。具体的には、会計基準等の内容を適切に把握し、又は会計基準等の変更等について適切に対応することができる体制を整備するため、公益財団法人財務会計基準機構へ加入し、同機構が開催する研修等へ参加しております。 ※長いためこれ以降は割愛します。 よろしくお願いします。

    • ベストアンサー
    • Ruby
  • Ruby 正規表現による文章取得

    こんばんは。 最近正規表現を用いたスクローリングを行っているのですが、 その中でうまく動かない部分があったため質問させていただきました。 プログラムは以下の通りです。 text = "" data = Dir.glob("/home/edinet/**/*.html") data.each do |find| flag = nil IO.foreach(find) do |line2| case line2 when /保有目的が純投資目的以外の目的である投資株式の保有区分、銘柄、株式数、貸借対照表計上額及び保有目/ flag = true when /保有目的が純投資目的である投資株式の前事業年度|保有目的が純投資目的|普通株式/ flag = false end text << line2.chomp if flag == true end print text end >保有目的が純投資目的である投資株式の前事業年度|保有目的が純投資目的|普通株式 この3つのどれかが含まれている場合にfalseを返し、文字列の取得が終了するはずなのですが、「普通株式」が含まれている行以降も文字列を取得し続けてしまいます。 正規表現が間違っているためなのでしょうか? ご回答の程どうかよろしくお願い致します。

  • Ruby 正規表現での文字列取得

    こんにちは。 先日Rubyでとあるファイルから特定の文字列を取得するプログラムを組んでおりましたところ、正規表現は合っていそうなのに取得できない場合がありましたので質問させていただきました。 <h6 class="smt_head5" style="padding-left: 27pt; padding-right: 0pt; margin-top: 0pt; margin-bottom: 0pt; text-indent: 0pt; font-family: 'MS 明朝'; text-align: justify; letter-spacing: 0pt; line-height: 15pt;">イ 保有目的が純投資目的以外の目的である投資株式</h6><p class="smt_text5" style="text-align: justify; padding-left: 40pt; padding-right: 0pt; margin-top: 0pt; margin-bottom: 0pt; text-indent: 9.9pt; font-family: 'MS 明朝'; letter-spacing: 0pt; line-height: 14pt;">銘柄数             5銘柄</p><p class="smt_text5" style="text-align: justify; padding-left: 40pt; padding-right: 0pt; margin-top: 0pt; margin-bottom: 0pt; text-indent: 9.9pt; font-family: 'MS 明朝'; letter-spacing: 0pt; line-height: 14pt;">貸借対照表計上額の合計額   299,505千円</p><p class="smt_text6" style="text-align: justify; padding-right: 0pt; margin-top: 0pt; margin-bottom: 0pt; font-family: 'MS 明朝'; letter-spacing: 0pt; line-height: 14pt;"> </p><p style="page-break-before: always; line-height: 0.75pt; width: 100%; font-size: 0.75pt;">&nbsp;</p><h6 class="smt_head5" style="padding-left: 36pt; padding-right: 0pt; margin-top: 0pt; margin-bottom: 0pt; text-indent: -9pt; font-family: 'MS 明朝'; text-align: justify; letter-spacing: 0pt; line-height: 15pt;">ロ 保有目的が純投資目的以外の目的である投資株式の保有区分、銘柄、株式数、貸借対照表計上額及び保有目的</h6><p class="smt_text5" style="padding-left: 36pt; text-indent: 9pt; line-height: 15pt;">(前事業年度)</p> 上記のような文字列を、 text = "" 4 5 data = File.open(fpath) do |f| 6 7 f.each_line do |line| 8 9 line.gsub!(/前事業年度特定投資株式/,"前事業年度") 10 line.gsub!(/当事業年度特定投資株式/,"当事業年度") 11 12 13 line.gsub!(/保有目的が純投資目的である/,"EOF") 14 line.gsub!(/保有目的が純投資目的の/,"EOF") 15 16 next unless line =~ /保有目的が純投資目的以外/ .. line =~ /EOF/ 17 text << line.chomp unless line =~ /^\s+$/ 18 19 20 end 21 end 以下のような文字列で取得しようとしたのですが、「保有目的が純投資目的以外」の部分にひっかかりませんでした。 また別の文字列中にある「保有目的が純投資目的である」の部分をEOFに置換する行程もおそらく作動していないと思われます。 どうしたら正しく取得できるでしょうか?ご教授お願い致します。

  • 自宅での事業:青色申告の貸借対照表の建物の項目記入方法

    持ち家の自宅の一室で事業を営み始めたものです。今年初めて青色申告をしようとして、貸借対照表の記入方法で判らない部分があります。ご存知の方、ヘルプお願いいたします。 事業割合に応じて建物の減価償却費を計上できると聞いて、そうしようとしています。説明を判りやすくするため、具体的な数字を例に使います。 期首残存価格が1000万円、今期の建物全体の減価償却費が100万円(ここでは正確な計算式は使っていません。)、事業割合が10%とします。 この場合、10万円を減価償却費として費用に計上できると理解しています。判らないのは、貸借対照表の「建物」の項目です。この項目の「期首」と「期末」欄には、いくらと書くべきでしょうか? 1.事業割合を無視して、1000万円と900万円と書く。  その上で、90万円を事業主貸とする。  こうすると、事業とは無関係に大きな資産を持っているような貸借対照表になってしまい、気持ち悪いです。 2.0円と-10万円と書く。  こうすると、期末の建物資産内容がマイナスとなって、やはり気持ち悪いです。 3.事業割合を考えて、100万円と90万円と書く。  ちょっと良さげにも思えるのですが、建物資産を分割してしまっても良いのでしょうか? 4.0万円と0万円と書く。  自宅は、本来この事業用の資産では無いので、これでも良いようにも思えるのですが、計上した10万円の減価償却費を含む貸借対照表の右側とバランスしなくなってしまいます。 いったいどの方法が正しいのでしょうか?

  • Ruby 改行文字の認識

    こんにちは。 最近質問させていただいているRubyのスクローリングの際に1行ごとに文章を判定し、flagを立てて取得しているのですが、下記のプログラムで改行文字「¥n」を事前に挿入しているにもかかわらずflagがうまく機能しないため質問させていただきました。 読み込んでいるhtmlファイルは改行が少ないファイルであるため、改行を入れてあげなければ余計な部分まで取得してしまう状態です。 以下プログラムです。 1 text = "" 2 data = "/home/edinet/E05267/S1001YX6/index.html" 3 4 flag = nil 5 6 File.open(data) do |f| 7 8 f.each_line do |file| 9 file.gsub!(/<\/tr>/,"\n") 10 11 #IO.foreach(file) do |line2| 12 file.each_line do |line2| 13 case line2 14 when /保有目的が純投資目的以外の目的である投資株式の保有区分|保有目的が純投資目的以外/ 15 flag = true 16 17 when /保有目的が純投資目的である投資株式|EOF|無議決権株式|政府及び地方公共団体|普通株式|【監査報酬の内容等】/ 18 flag = false if flag == true 19 20 end 21 22 text << line2 if flag != nil 23 break if flag == false 24 25 end 26 text.gsub!(/<\/td>/,"\t") 27 #text.gsub!(/<\/tr>/,"\n") 28 text.gsub!(/<[^>]+>/,"") 29 print text 30 31 end 32 end ご回答の程よろしくお願い致します。

    • ベストアンサー
    • Ruby
  • 個人事業者との取引契約にかかる決算書の見方について

    現在、個人事業者との取引にあたり、当方の取引手続きの関係から相手の財務状況を作成中です。 一般の会社であれば、貸借対照表を基に財務状況を作成しておりますが、個人事業者の貸借対照表には、借方に「事業主貸」貸方に「事業主借」とあって、現在、手元にある取引予定者の貸借対照表には事業主貸に数百万円の数値が計上されております。これを一般の会社の様式に作成するとしたら、「その他流動資産」にでも加算したもが資産総合計になるものでしょうか。それとも、当該事業主貸、借は資産、負債から差し引くべきものでしょうか。 教えてください、よろしくお願いします。

専門家に質問してみよう