- ベストアンサー
PHP4で、preg_replace、preg_matchが使えません。
PHP4を、インストールしました。 ライセンスは問題なく表示されます。 PEAR.phpなどライブラリが一切読み込めないようです。 また、 preg_replace、preg_matchが使えません。
- mikichan-e
- お礼率61% (997/1628)
- PHP
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> PEAR.phpなどライブラリが一切読み込めないようです。 > preg_replace、preg_matchが使えません。 どんなスクリプトを書いたとき、どんなエラーメッセージが出ますか? 「どうダメなのか」を詳しく書けば、 その分だけ早く解決するかもしれません。
関連するQ&A
- preg_replace()でマッチ文字列に関数を
PHPでのpreg_replace()でマッチした文字列に関数を適用したいのですが、上手くいきません。 $str = "hogeHoge"; $pattern = '/(h.ge)/i'; $replacement = strtoupper("$1"); echo preg_replace($pattern, $replacement, $str); // 期待する結果 : HOGEHOGE // 実行した結果 : hogeHoge 根本的に間違っているかもしれませんが、ご指南いただければ幸いです。
- ベストアンサー
- PHP
- 【PHP】preg_replace() で正規表現が正常に動かない?
PHP5利用者です。 preg_replace() が思い通りに動かないため困っています。 マルチバイト文字及び正規表現を使おうとした場合動作がおかしいのです。例えば、 「 . 」は任意の1文字とされていますが、 $str = preg_replace("/第.回/", "第3回", "今日は第*回目です。"); 等と書いても何も置換されません。 これは一体どういうことなのでしょうか? 文字コードはUTF-8です。 お詳しい方、よろしくお願いいたします。
- ベストアンサー
- PHP
- 正規表現preg_replace("/[a-z0-
「*」を調べたら、「直前の表現の0回以上の繰り返しにマッチ」て書いてあったのですが、 「0回以上」の意味が良く分かりません。 例えば、 preg_replace("/[a-z0-9\-\.]/", "○", "ABCabcXYZxyz");の実行結果が、 「ABC○○○XYZ○○○」となるのは分かるのですが、 preg_replace("/[a-z0-9\-\.]*/", "○", "ABCabcXYZxyz");の実行結果は、 どうして、「○A○B○C○○X○Y○Z○○」になるのでしょうか?
- ベストアンサー
- PHP
- preg_replace, ereg_replace
$bodyにはテキストファイルなどから読み込んだ、$dateと言う文字(変数ではない)と、改行を含む文字列。 それで、「$date」を、phpスクリプト上の$dateの値に置換したく、 $tmp = preg_replace("/\$date/s", $date, $body); または、 $tmp = ereg_replace("\$date",$date,$body); としたのですが、どうも置換されません。何がいけないのでしょうか?
- ベストアンサー
- PHP
- PHP preg_match の使用方法についてです。
PHP preg_match の使用方法についてです。 セレクトされるフォームの携帯サイトを作成しております。 確認画面から、戻るで入力画面に戻ったときに、一度選択したセレクトのものを そのまま表示させたいです。 <select name="reservation_area" class="required"> <option value="" selected="">選択してください</option> <option value="北区">北区</option> <option value="荒川区">荒川区</option> <option value="台東区">台東区</option> </select> どこにpreg_matchの内容を記載すればよろしいでしょうか? 分かる方がおりましたら、よろしくお願いいたします。
- ベストアンサー
- PHP
- preg_matchについて
初級者です。 初歩的な質問で申し訳ないですが質問させていただきます。 データベースのテーブルにある日付にマッチすれば"マッチ"、マッチしなければ"マッチなし"と表示させたく思っております。 ~DB内任意のフォームデータ~ 0405 0406 0407 ・ ・ ~~~~~~~~~~~~~~ そこで下記のスクリプトを作ったのですが、 この方法だとDBに登録されている日付の分だけ "マッチ" "マッチなし" ・ ・ と表示されてしまします。 ==test.php== <? //$keydayはリクエストのあった日付Ymd形式 //getRecList()に関しては別ファイルにてfunction済み //["日付"]というのは上記DBの日付の項目名 $reclist = getRecList(); foreach ($reclist as $rec) { $matchday = (date_format("Ymd",$rec["日付"])); unset($found); $found[0]=1; $matchecho ="マッチ"; $unmatchecho="マッチなし"; ?> <? if (preg_match("/$keyday/",$matchday)) { ?> <? if (!array_key_exists($matchecho,$found)) { ?> <? echo $matchecho ?><? $found[$matchecho] = 1; ?> <? } ?> <? } else { ?> <? if (!array_key_exists($unmatchecho,$found)) { ?> <? echo $unmatchecho ?><? $found[$unmatchecho] = 1; ?> <? } ?> <? } ?> <? } ?> ?> ======== やりたい事は、 DBに登録されている日付の数に左右されずマッチする日付があったら1回だけ"マッチ"と表示、 待ちしなければ1回だけ"マッチなし"と表示させたいのです。 ・・なんかforeachで回している事自体が間違いな気がしますが、どうかよろしくお願いいたします。
- 締切済み
- PHP
- preg_matchによるカタカナチェックについて
preg_matchによるカタカナチェックについて 宜しくお願い致します。 PHPのバージョン:4.4.1 文字コード:euc-jp preg_matchでカタカナのみ入力されているかをチェックしたいと思っております。 下記の様な感じで作ったのですが、ひらがなもスルーになってしまいます。 //会社名【カナ】の適合チェック if(preg_match("/[^ァ-ヶー]+/",$hoge_kana)) { print "カタカナ以外が含まれます"; } どうすればカタカナ以外が含まれた場合にチェックできるのでしょうか?
- ベストアンサー
- PHP
- phpのpreg_replaceで質問です
お世話になります phpのpreg_replaceで質問です 下記の様な記述にて文字列の置換をしています $body = preg_replace("/cid:(\d{2,})@(\d{6}).(\d{6})/","/bl/id/$1/",$text); コレを改良してcidの次に入る値で処理を分けたいのですが、うまくいきません。 どなたかご教授お願い致します $arr = array("gif","jpg"."png"); $body = preg_replace("/cid:(\d{2,})@(\d{6}).(\d{6})/","/bl/id/$1/$arr[$1]",$text); 宜しくお願い致します
- ベストアンサー
- PHP
- PHPのpreg_replaceについて
文字列に半角、全角があったら''に置換したいです。 例)あ あ あ -> あああ 上記のように。 ソースは下記のとおりしてみたのですがうまく表示されませんでした。 $string = 'あ あ あ'; $pattern = '[ \t\n\r\f]'; $replacement = ''; $var_dump(preg_replace($pattern,$replacement, $string)); 他には $string = 'あ あ あ'; $pattern = '[[:space:]]'; $replacement = ''; $var_dump(preg_replace($pattern,$replacement, $string)); などと行ってみました。 ご教授お願いいたします。
- 締切済み
- PHP
お礼
ありがとうございました。