![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
No.4ベストアンサー
- 回答日時:
>if ($searchkey eq~ m/$FORM{'SYOZOKU'}/;){
これは「eq~」ではなくて「=~」ですね。
(正規表現では文字列でも「=~」を使います)
あと、こちらのミスでしたが、ifの後のカッコ内の最後のセミコロンは不要でしたね。
$FORM{'SYOZOKU'}が「総務部経理課」ということは、
$FORM{'NAME'}は「山田太郎」でしょうか。
$searchkeyがフォームから送信された内容ということなので、
この検索ワードが、データのどちらの要素にもヒットするようにするには、
if ($FORM{'SYOZOKU'} =~ m/$searchkey/ || $FORM{'NAME'} =~ m/$searchkey/) {
&ok;
}
又は
if ($FORM{'SYOZOKU'} =~ m/$searchkey/) {
&ok;
} elsif ($FORM{'NAME'} =~ m/$searchkey/) {
&ok;
}
でいいと思います。
所属の方のみにヒットさせたい場合は後半部分をカットすればいいはずです。
できました!
ありがとうございます!
正規表現ではeqではなく=使うんですね。(==とも違いますよね?)
両方から検索の方法まで教えていただいて本当にありがとうございました。
No.3
- 回答日時:
再びnamiri_eです。
>#$searchkey =~ /^$searchkey.+/;
>#$searchkey =~ m/$searchkey/;
>$searchkey =~ /.*$searchkey.*/;
>
>if ($searchkey eq $FORM{'SYOZOKU'}){
>&ok;
正規表現をそのまま裸で使っているのですか?
500エラーは出てませんか?
それと、$FORM{'SYOZOKU'}はフォームから送信された語句ですよね。
すると$searchkeyはデータファイルの、例えば「山田太郎」などが入っているのですか?
その場合、
フォームから送信された$FORM{'SYOZOKU'}とマッチするものを取り出すのなら、
if ($searchkey =~ m/$FORM{'SYOZOKU'}/;) {
&ok;
}
とすればいいと思いますよ。
できれば、それぞれの変数の内容を教えていただければ助かります。
何度もありがとうございます。
if ($searchkey eq~ m/$FORM{'SYOZOKU'}/;){
としてみましたが、エラー(Internal Server Error)でした。
>できれば、それぞれの変数の内容を教えていただければ助かります。
すいませんでした。
$searchkey:フォームで入力された検索キーです。
$FORM{'SYOZOKU'}:これはログファイルの中に入っているデータです。
(所属のデータ)
NAME=山田太郎&SYOZOKU=総務部経理課
というようなログでしたら、「総務部経理課」が$FORM{'SYOZOKU'}になります。
$searchkeyは検索するために入力された文字データですので、
たとえば、「経理課」と入力されたら
経理課が$searchkeyになります。
おわかりいただけたでしょうか?
No.2
- 回答日時:
>$searchkey =~ /^$searchkey.+/;
これだと「山」で検索したときには、
「山ではじまる」ものだけにマッチしませんか?
ただ単に「山を含む」のでしたら
$searchkey =~ m/$searchkey/;
ではどうでしょう。
やって見たことはないですが
$searchkey =~ /.*$searchkey.*/;
こんなのでもできるかもしれません。
回答ありがとうございます。
3つともやってみましたが、全部ダメでした。
(一致するものを入れた場合はきちんと結果が出る)
#$searchkey =~ /^$searchkey.+/;
#$searchkey =~ m/$searchkey/;
$searchkey =~ /.*$searchkey.*/;
if ($searchkey eq $FORM{'SYOZOKU'}){
&ok;
こんな感じにしてあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelでの検索結果を含む行だけを表示させたい 5 2023/03/10 17:08
- その他(ソフトウェア) 一太郎付属の”全件検索”ツールの不具合 3 2023/07/25 15:03
- その他(Microsoft Office) Outlookメール 連絡先の検索について 〈 ご説明 〉 Windows PC の Outlook 1 2022/09/23 14:43
- Google Maps iPhoneのGoogle検索窓を通常の大きさに 戻す方法を教えて頂けませんか?(切実) 日本全国の 2 2022/10/02 02:08
- Visual Basic(VBA) WordのVBAについて 5 2023/01/11 14:38
- PHP phpの imap_search で漢字コード 1 2022/09/06 17:32
- その他(IT・Webサービス) 不動産会社を起業し、ホームページを作りました。その際に、弊社は「◯◯不動産(株)」なのですが、県外に 1 2022/05/26 12:02
- その他(Microsoft Office) アウトルックでの名前検索について アウトルックで連絡先を調べたいです。 苗字しかわからないので、調べ 1 2022/07/01 16:01
- Visual Basic(VBA) VBA初心者です 検索した数字の行に色をつける 5 2023/02/13 14:22
- UNIX・Linux bashスクリプトのgrepで3XXの検索の仕方について 2 2022/09/06 21:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
お問い合わせフォームから送信...
-
フォームを再送信しますか?
-
CGIで自動返信
-
F Secureへの質問先
-
RSS配信
-
Googleフォームを回答したか確...
-
postmail(UTF-8)でメールが文字...
-
Accessでメール一括送信ソフ...
-
人気blogランキングにpingを送...
-
FLASHからアプリケーションの呼...
-
送信先を選択できる フォーム C...
-
ビジネスメールの敬称
-
Excel-VBAでInputBox+Pulldown...
-
初歩的な事だと思います。 Sub...
-
エクセルVBA テキストボックス...
-
複合機から自動的にFAXを送る方...
-
cgi 実行時のエラー
-
数字以外の入力をエラーにする...
-
テキストボックスの番号を使っ...
-
EXCEL VBA で指定した範囲に入...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
お問い合わせフォームから送信...
-
フォームを再送信しますか?
-
Safariで「本当にこのフォーム...
-
Googleフォームを回答したか確...
-
ACCESSから、メール送信を行い...
-
VB6で、Bsmtp.dllを使って、メ...
-
ソケットで通信するデータの帯...
-
ホームページビルダーのメール...
-
VBA EasyCommでの送信
-
Accessでメール一括送信ソフ...
-
c# メールが送信できたか確認
-
SendmailでHTML形式のメールを...
-
BASP21のSendMailとSendMailEx...
-
CGIでメールのReturn-Pathに値...
-
HP の問い合わせフォームのつく...
-
空メールを送信するフォームCGI
-
送信字数制限の無いフォームCGI...
-
アンケート用紙での回答ができない
-
sendmailでの複数メールアドレ...
-
safariの 「本当にもう一度フ...
おすすめ情報