以下のこと教えてください.
(1)Perlって言語はそもそもどのような目的で使われるのでしょうか?
(2)よくCマガなどにPerlの連載がのっていますが,Perlっていう
ソフトがうってるのでしょうか??
インストールの仕方などのヒントを教えてください.

以上,お願いします!

このQ&Aに関連する最新のQ&A

A 回答 (1件)

panicdjさん、こんにちわ。



>(1)Perlって言語はそもそもどのような目的で使われるのでしょうか?

基本的には、文字列加工処理に使用されます。
特定のフォーマットに従ったデータファイルと、違う形へとするのを最も
得意な分野とします。レポート作成言語です。

又、インタープリタ型の言語でもあります。

CGIでよくPerl言語が使用されるのは、
(A)掲示板などで「文字列処理に強い」Perl言語が文字列処理に弱いC言語などより適切であった。
(B)プログラム作成者のOSと実際に動かすサーバーのOSが違うことが多いCGIではインタプリタ言語が最適であった。


>(2)よくCマガなどにPerlの連載がのっていますが,Perlっていう
ソフトがうってるのでしょうか??

Perl言語は、他の言語と違い、今のところほとんど売ってはいません。
(もうすぐ、VisualPerlなどが日本で売られるかもしれません)

Perlはインターネット上から無料で手に入れることが出来ます。

http://aspn.activestate.com/ASPN/Downloads/Activ …
にあります。ただし、インストーラーの拡張子がmsiという新しい拡張子です。

この拡張子でインストールが出来ない場合は、
http://aspn.activestate.com/ASPN/Downloads/Activ …
から、msi拡張子のインストーラーを動かすためのプログラムをダウンロードすることが出来ます。

以上。ご参考になりましたら。
    • good
    • 0
この回答へのお礼

kokucho81さんさっそくのお返事ありがとうございます.

非常に詳しくかつわかりやすく解説してくださいまして,
なんとお礼いってよいかわかりません.
ここを利用した際は,これからも無知な私にアドバイスお願いいたします.



#ちなみに,ここ(CGI)ではなくPerlというスレッドがありましたね.
#ここを拝見するみなさんすみません.m(_ _)m

それでは.

お礼日時:2001/09/25 17:54

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

このQ&Aと関連する良く見られている質問

QみなさんはperlやRubyなどの言語をどこで学んだのですか

教えてgooやブログサービスなどのプログラムには
perlやRubyなどの言語が使われていますが、
そのような大規模サービスをプログラミングできるプロの方々は
どこでそれらの言語を学んだのでしょうか?
(生まれたときからperlやRubyを知っていたはずは無いので誰でも
初心者の頃があるはずです)
教えてください。よろしくお願いします。

Aベストアンサー

Perlは、十ン年前に独学で勉強しました。
当時は、参考書もろくに無かったのでシステムに付いてた英語のMANやネット上で出回っていた人の作ったソースを調べたりして大変だったように記憶しています。
その後、良書がたくさん出てきてうれしいやらくやしいやら・・・
ただ、その前には「C」「Pascal」「BASIC」「FORTRAN」「8/16ビットMPU系アセンブラ」などの経験はありました。
Rubyはまだ仕事で使うことはありませんが、ひまのあるときにはさわってみて遊んでます。
やっぱり、「お題」がないとプログラミングは学習する気が起きないので、まずはアルゴリズムの本や情報処理系の練習問題などであそんでみてはいかがでしょうか? この業界、最近アカデミックな経験をされている方が少なくなりましたので寂しいかぎりです。

Qperl,ruby,phpは同系列?

ずっとphpとcgiは同じ分野で同レベルだとおもっていたのですが、perlとphpが同じでどちらもCGIなんでしょうか?教えて下さいお願いします。

Aベストアンサー

CGI(Perl)はページを作るのに
1から構築しなければならないのに対し、

PHPは
1から構築したり、JavaScript(以下JS)のように
HTMLに部分的に組み込むことができます。

機能としては、
CGIは基本機能と拡張機能があり、
モジュール(関数集みたいなもの)というものを利用することによりあらゆる機能を使うことができます。

逆にPHPは
拡張機能がないといってもいいでしょう
ただ拡張機能は自分で作ろうと思えば作れるのですが。

速さは、状況にもよりますが
PHPのほうが早いといわれています
ただ、サーバのほうで設定によっては
Perlのほうが早くなっていることもあります。

PHPは新しく
ヴァージョンが新しくなるにつれていろいろな機能が増えています。しかしサーバを管理している人が常に新しいヴァージョンに設定していなかったり、設定により使えなかったりすることもあります。

その点Perlは古くから存在しているので
サーバを変えて使えなくなるということはありません。

セキュリティー的には
断然Perlのほうが強く
PHPはいまだにバグがあるといわれています。

最後にまとめとして、
どっちもどっちなので
上を参考に簡単なプログラムなら
PHPのほうが楽かと思いますが
サーバの状況により使えないと考えたら
Perlに変えたほうがよいと思います。

CGI(Perl)はページを作るのに
1から構築しなければならないのに対し、

PHPは
1から構築したり、JavaScript(以下JS)のように
HTMLに部分的に組み込むことができます。

機能としては、
CGIは基本機能と拡張機能があり、
モジュール(関数集みたいなもの)というものを利用することによりあらゆる機能を使うことができます。

逆にPHPは
拡張機能がないといってもいいでしょう
ただ拡張機能は自分で作ろうと思えば作れるのですが。

速さは、状況にもよりますが
PHPのほうが早いといわれています
...続きを読む

Q現在、html,cgi(perl),javascriptを主に使用して

現在、html,cgi(perl),javascriptを主に使用して、ホームページを作成しています。
作成中いくつか自分だけでは作成につまってしまった部分を質問させていただきます。

まず1つが、通常のhtmlやcgiでIE上に表示させているホームページのそのページを、
ページ上のボタンをクリックすることでwordやexcelに保存するということは可能なのでしょうか?

次に2つ目として、フォームから送信し、textファイル内に日付を付けて保存してあるデータから、
特定の日付のデータを抽出して別ページに表示することは可能でしょうか?

どちらか1つだけでもよろしいので、回答お願いします。

Aベストアンサー

前者はサーバサイドでwordなりexcelなりを生成して送り返してるやりかただね。
(pdf作成サイトとかと仕掛けは一緒)
これはwordやexcelの書類形式が(バイナリ的に)どうなってるか知らないとできない。(最近のはxml形式みたいだからどうにかなる気がする)
後者は、textがユーザローカルの場合無理。formのfileでサーバ側に一度uploadしてもらいサーバサイドで処理して埋め込むなりクッキーにするなり。(通常は埋め込む)
textというのがサーバ側のならjavascriptかクッキーで橋渡しが楽だと思う。

QCGI,Perlで下記のようなことを、行いたいと考えています。

CGI,Perlで下記のようなことを、行いたいと考えています。

 a.html
 b.html
 c.html

があり、
__________________________________
1:それぞれ、フォームに、テキストボックスが一つあります。
2:他のフォームに遷移できます。(例:a.htmlからc.hmtlのように)
3:各フォームに「A、B、Cの値を確認」ボタンがあります。
4:3のボタンをクリックすると、各テキストボックスで入力した
値が表示される。

【イメージ】
a.htmlのテキストボックスに、100を入力
b.htmlのテキストボックスに、200を入力
c.htmlのテキストボックスに、300を入力

した場合。

Aで入力された値は100です。
Bで入力された値は200です。
Cで入力された値は300です。
______________________________________
と表示させる、cgiを作成したいです。

又、その際、hiddenを使用して行う方法(手順)を教えて頂けないでしょうか。

ファイルに書き込むことで、値を保持しておくのではと
考えましたが、a.htmlの値100を書き込み、再度、a.htmlの
値を書き込むと、a.htmlのフォームから送られた値が2つ(1回目、2回目)書き込まれた
状態になるように思います。

今回のように、例えば、ファームの入力値を保持して他の(b.thmlなど)に
遷移し、ボタンをクリックすると、全フォームの値を表示するような場合、
どのような方法が考えられるのでしょうか?

どうぞ、宜しくお願いいたします。

CGI,Perlで下記のようなことを、行いたいと考えています。

 a.html
 b.html
 c.html

があり、
__________________________________
1:それぞれ、フォームに、テキストボックスが一つあります。
2:他のフォームに遷移できます。(例:a.htmlからc.hmtlのように)
3:各フォームに「A、B、Cの値を確認」ボタンがあります。
4:3のボタンをクリックすると、各テキストボックスで入力した
値が表示される。

【イメージ】
a.htmlのテキストボックスに、100を入力
b.htmlのテ...続きを読む

Aベストアンサー

CGIはブラウザからサブミットされたデータを受信して処理します。
基本的にはそれぞれ別個のフォームとなりますので、いずれかひとつのフォームでサブミットした場合はそのフォームの内容のみしかサブミットできません。
よって、サブミットする側の問題なのでCGI側ではどうすることも出来ません。
これを解決するにはクライアント(ブラウザ)側での処理を行う以外に手は有りませんので、必然的にJavaScriptを用いて以下の条件を満たすことで全ページのフォーム内容をサブミットすることが可能となります。

1.a,b,cのhtmlは名前付きのフレーム内に確実に存在すること(別窓だと表示不足処理がめんどくさい->たとえば「a.html」しか開いていない)
2.各html内のフォームにそれぞれ別個のname指定があること

例として
a.htmlから別のフレームのhtml内のフォームにあるテキストフォームを参照する場合は

変数名 = parent.フレーム名.document.フォーム名.テキストフォーム名.value;

で取得できますので、これをhiddenフォームに代入してからサブミットすればよいです。

サーバとクライアントという関係が介在するようなWebプログラミングは、サーバ側の処理(CGIやPHPなど)とクライアント側の処理(JavaScriptなど)をしっかり判別理解して取り組まないとまともに動作するものは出来ません。

CGIはブラウザからサブミットされたデータを受信して処理します。
基本的にはそれぞれ別個のフォームとなりますので、いずれかひとつのフォームでサブミットした場合はそのフォームの内容のみしかサブミットできません。
よって、サブミットする側の問題なのでCGI側ではどうすることも出来ません。
これを解決するにはクライアント(ブラウザ)側での処理を行う以外に手は有りませんので、必然的にJavaScriptを用いて以下の条件を満たすことで全ページのフォーム内容をサブミットすることが可能となります。

1....続きを読む

Qperlで、[ \r\n , \n ]の意味は?

シンプルなCGI掲示板の勉強中ですが、

$message =~s/[ \r\n , \n ]/<br \/>/g; となっており、
これは改行文字を<br />に置き換えるのだそうですが、
[ \r\n , \n ]の部分というのはどういった意味でしょうか。

[ abc ]だと、a,b,cのうちどれか1文字は入っていれば良いですよね。
[ ]に「,」が入るとよく分からなくなります。

お分かりの方、教えてくださいませんか。
よろしくお願いいたします。

Aベストアンサー

サンプルは、
$message =~ s/\r\n/<br \/>/g;

$message =~ s/\n/<br \/>/g;
1行で済ませようとして間違ってしまったのでしょうか?

\r 復帰文字(return)

\n 改行(newline)

「,」カンマそのもの

\r 復帰文字 (return)
のいずれかを<br />に置き換える、という意味になってしまうでしょうね。
この目的のためには、

$message =~ s/\r\n/<br \/>/g;
$message =~ s/\r/<br \/>/g;
$message =~ s/\n/<br \/>/g;

と3行記述するのがいいのではないでしょうか?

参考サイトに私が勉強させてもらっているサイトを紹介しておきます。

参考URL:http://www.rfs.jp/sitebuilder/perl/04/07.html


このカテゴリの人気Q&Aランキング

おすすめ情報