• ベストアンサー

Perlで定義されている関数名を全て取得する方法

Perlで定義されている関数名を全て取得する方法はあるのでしょうか? ソースを見ればわかりますが、取得する方法があれば教えてください。 001.pl sub aaa{ print "a"; } 002.pl sub bbb{ print "b"; }

質問者が選んだベストアンサー

  • ベストアンサー
  • zebedeer
  • ベストアンサー率66% (80/121)
回答No.1

$ perl -MData::Dumper -e 'print Dumper \%{main::}' こんな感じ。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • DLL内に定義されている関数名の取得方法

    GetProcAddressにて関数の有無を取得することはできますが、DLL内に定義されている関数名すべてを取得することは可能でしょうか?可能であれば、その方法をお教えください。よろしくお願いいたします。

  • 外部関数を利用する方法。

    外部関数を利用する方法。 初歩的な質問で恐縮ですが、ご教授願います。 perlで、他のディレクトリ(フォルダ)にあるcgiファイルの関数(sub aaa())を呼び出したいのですが、記述方法がわかりません。 /aaa/a1.cgi #↓=========================== : &hoge; : #↑=========================== /bbb/b1.cgi #↓=========================== : sub hoge{ : } : #↑=========================== このような感じです。よろしくお願いします。

    • ベストアンサー
    • Perl
  • 関数定義での変数について

    Perl/CGIより移行してきた者です。 この度、サブルーチン(PHPで言う関数定義)にて疑問があります。 当方、PHP5を利用しています。 Perl/CGIでは関数外で定義した変数も利用できたかと思うのですが、PHPでは利用できますか? 簡単なスクリプトでテストしたら表示されなく頭を悩ませています。 以下コードになります。 <?php $prints ="aaa"; $printss ="bbb"; function check3(){ print "$prints"; print "$printss"; } check3(); ?> Perl/CGIですと $test = "aaa"; &print(); sub print { print "$test"; } でもばっちり表示されたかと思うのですが。 伝わりにくいかと思いますが、ご存知の方宜しくお願い致します。

    • ベストアンサー
    • PHP
  • 複数行の結果を単一列に連結

    以下のような【TABLE1】と【TABLE2】をID_SUBの列で結合した結果を 【A.結果】のように取得したいのですがうまくいきません。 【TABLE1】 ID ID_SUB 1 A1 2 B1 【TABLE2】 ID ID_SUB ID_SUB_CODE 1 A1 AAA1 2 A1 AAA2 3 B1 BBB1 4 B1 BBB2 【A.結果】 ID_SUB ID_SUB_CODE A1 "AAA1,AAA2" B1 "BBB1,BBB2" いろいろ調べたのですが、MySQLにはGROUP_CONCATの 関数を使うと簡単に出来るみたいですが、PostgreSQLには 似たような関数がなく、ARRAYが使えるかな?と思ってためしてみましたが array_to_string(ARRAY(ID_SUB_CODE, ',')) 等のような感じで試した結果、ID_SUB_CODEが 全て連結されるような使い方しか出来ませんでした。 A1 "AAA1,AAA2,BBB1,BBB2" B1 "AAA1,AAA2,BBB1,BBB2" 何か良い方法はありますでしょうか?

  • Perlファイルのパラメータの変数名

    ----------- calc.pl -------- $a=1; $b=2; $c=$a+$b; print "$a+$b=$c"; というPerlファイルの$a,$bをcalc.pl内で固定値にするのでなく ----------- calc.bat -------- capl.pl 1 2 calc.pl 5 3 calc.pl 4 1 … のようにして、perlファイルのパラメータで任意に設定したいのですが、Perlファイルのパラメータは、どんな変数名になるのでしょうか。

    • ベストアンサー
    • Perl
  • Perlで自分自身の関数名を知るには?

    Perlで、自分自身の関数名を知る方法はあるでしょうか? sub testfunc { print FUNCNAME } &testfunc; 例えば、上記のようなコードを実行すると、testfunc という出力が得られるような FUNCNAME のような関数やモジュールがあるか、と言い換えてもいいかもしれません。 以上よろしくお願いします。

    • ベストアンサー
    • Perl
  • 自分で定義した関数をすぐに使いたい

    自分で定義した関数を最初から実装されているabs()やsqrt()のように何もせず(呼び出さずに)使用することはできないのでしょうか。 現在,"C://Perl/function/~.pl"といったようにfunctionという名前のフォルダに自分で作成した関数を保存しています。そしてその関数を使うときには, require("C://Perl/function/var.pl") &パッケージ名::サブルーチン名(引数); などとして使用していますが,呼び出す関数が1つ2つなら良いですが統計学に関する関数がないためほとんど自分で定義したものをつかっています。そうすると使用したい関数が多くなるほど,呼び出す手間が多くなってしまうのですが何か良い手段はないものでしょうか(モジュールを作成してもそれほど手間が省けるようにも思えないのですが、、、)。

    • ベストアンサー
    • Perl
  • ユーザー定義関数でシート名を取得したい

    例えば、以下のユーザー定義関数で Public Function Test(A As Range) Test=A.Address End Function AにアクティブシートのセルA1~セルB2を指定すると「$A$1:$B$2」という値が帰ってきますが、 別のシートのセルA1~セルB2を指定しても、「$A$1:$B$2」という値が帰ってきます。 シート名が抜けてしまっているのですが、シート名はどのようにしたら取得できますか?

  • perlでファイルを分割してファイル名も出力したい

    >AA A AAA aaaaaaaaaaaaaaa aaaaaaaaaaaa >BBB BB B bbbbbbbbbbbbbbb bbbbbbbbbbbbbbb bbbbbbbbbbbbbb ・ ・ こういった形式でテキストが入った大きいサイズのひとつのファイルを ・ファイル名 AA A AAA ・テキスト内 >AA A AAA aaaaaaaaaaaaaaa aaaaaaaaaaaa ・ファイル名 BBB BB B ・テキスト内 >BBB BB B bbbbbbbbbbbbbbb bbbbbbbbbbbbbbb bbbbbbbbbbbbbb となるように個別に出力させたいのですがどのようにすればよいでしょうか? #!/usr/bin/perl -w use strict; my $first; my $file; $first = 1; open(IN,"分割前ファイル"); foreach(<IN>) { if ( /^>(.*)/ ) { if ($first == 0 ) { close(OUT); } else {$first = 0; } $file = $1; $file =~ s/[\r\n]//; open(OUT,">$file"); } else { print OUT $1; print OUT $_; } } close(IN); このようなプログラムを組んだのですが、出力結果はファイル名についてはいいのですが、テキスト内が思ったようにいきません。 ・ファイル名 AA A AAA ・テキスト内 AA A AAAaaaaaaaaaaaaaaa AA A AAAaaaaaaaaaaaa このような結果になってしまいます。 どなたか対処方をわかるかたがいましたらお願いします。

    • ベストアンサー
    • Perl
  • Rubyの関数定義

    Rubyで関数を定義し、呼び出すとエラーになります。 sub1() #sub1の呼び出し ・・・ def sub1() ・・・ end のようにすると、エラーになります。 def sub1() ・・・ end sub1() #sub1の呼び出し のようにするとエラーになりません。 関数の定義を呼び出し箇所のソースの後ろで定義してもエラーにならない方法はないのでしょうか。 ご存じのかた、いらしたら教えて下さい。