リストファイルから、検索対象ファイルを読み取る
結果を表示する。
というようにしています。
結果表示で、たとえば、「答えてねっと」という語が、
「oshiete_goo.html」というファイルでヒットした場合、
結果を、
“ タイトル名 (oshiete_goo.html) ”
というように表示させています。そこで質問です。
この結果表示の、括弧内にファイル名を拡張子付きで表示させて
いるのですが、(パラメータ:$fi)
それを、拡張子をとって、「oshiete_goo」だけを表示したいのですが、
どのようにしたらいいでしょうか。
記述するスクリプトを教えて下さい。
No.2ベストアンサー
- 回答日時:
> ファイル名の拡張子を省いたモノを、
> 別の変数、$fi_sec に渡すようにするにはどうしたらいいでしょうか?
別の変数に渡す必要があるのですか?
$fi =~ s/(.*)\.(.*)$/$1/;
で、既に$fiはファイル名の拡張子が省かれて、ファイル名だけになっていますが・・・。
だから、普通に$fiを使ってもいいですし、変数名を変えたいなら、
$fi_sec = $fi;
でいいですよ。
拡張子がついたままの変数も後で使いたいので残す、というのであれば、
$fi_sec = $fi;
$fi_sec =~ s/(.*)\.(.*)$/$1/;
とするのがいいでしょうね。
$fiが拡張子を含めたファイル名、
$fi_secが拡張子を除いたファイル名のみのもの、
ということになります。
No.3
- 回答日時:
$fiを非破壊で、と言うことですよね。
だったら、m演算子と配列マッピングを使って
($fi_sec) = m/^([^\.]*)\..*$/;
とかくのが綺麗かもしれません。
あと、正規表現を使うとマッチしなかった場合ヌル値が帰ってきてしまいますので、
$fi_sec = $fi if ($fi_sec eq "");
をあとにつけておいたほうがいいかもしれません。
No.4
- 回答日時:
#3です。
すみません、#3で書いたのは文字列が$_に入っている場合でした。$fiに入っている場合であれば:
($fi_sec) = ($fi =~ m/^([^\.]*)\..*$/);
と書けます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Excel(エクセル) ドキュメントに保存していたエクセルのファイルが開きません。 2 2022/12/02 09:38
- 法人税 電子帳簿保存法について 1 2022/04/07 11:17
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2023/01/20 14:36
- Excel(エクセル) アンケート集計用VBAについて教えて下さい。 約100人にアンケート内容が入ったExcelファイルを 1 2022/07/27 13:12
- Chrome(クローム) Chromeの描画領域を2分割して異なるスクロール位置を同時に表示させることはできますか 1 2023/03/01 16:53
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- その他(パソコン・スマホ・電化製品) CMD等でPC操作(excel開く等)を自動化させたい 1 2023/03/15 09:53
- HTML・CSS HTMLを正しく表示させるには 2 2023/06/18 09:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで集計したい。
-
number 改行が追加できない
-
フォームを再送信しますか?
-
CGIって何ですか?簡潔に教えて...
-
ホームページの事でおしえてく...
-
ホームページでCGIのフォームを...
-
htmlからパラメータで、cgiに渡...
-
cgiの注釈が出来ない
-
cgi
-
cgi アクセス制限 エラー
-
perlで書いたcgiでsqliteの使い...
-
VBAで条件から範囲を指定して色...
-
生成AI画像について
-
3DCG
-
ホームページにメールフォーム...
-
CGIの記述について教えてくださ...
-
CGIの設置が分かりません・・・
-
ホームページにCGIを設置したの...
-
ホームページにCGIを設置したの...
-
サーバーのエラーでおしえてく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで集計したい。
-
フォームを再送信しますか?
-
apacheでPerl CGIが作動せず、5...
-
ホームページでCGIのフォームを...
-
生成AI画像について
-
/bin/awk '{print $5}'ってどう...
-
入力フォーム(電話番号)
-
(フリーの)ツリー掲示版CGI、...
-
古ーくからフリーのtree.cgi掲...
-
VBAで条件から範囲を指定して色...
-
ホームページにメールフォーム...
-
一番簡単なCGI,掲示板の設置教...
-
CGIって何ですか?簡潔に教えて...
-
サーバーのエラーでおしえてく...
-
サイト訪問者の情報を取得したい
-
htmlからパラメータで、cgiに渡...
-
CGIで出力するhtmlの<!DOCTYPE ...
-
cgiからsendmailを送信で文字化け
-
POSTメソッドの最大容量について
-
ホームページにCGIを設置したの...
おすすめ情報