[過去ログ] 正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g (989レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
300
(4): 04/02/27 00:44 ID:28vfJb2l(1) AAS
どっか勘違いしてるのでしょうか?
perlなのですが、
テキストボックスに入れた数値を$in{'count'}に格納して、
それが数字じゃなければエラー出しして終わりにしたいのですが、
数値だろうと、そうでなかろうと、いかのunlessの中を通りません。

 unless ( ($in{'count'} =~ m/^[1-9][0-9]*$/) || ($in{'count'} == 0) ){
  print "Content-type: text/html\n\n";
  print "数字を入れてください。もどってください。";
  exit;
 }
301
(1): 04/02/27 01:04 ID:??? AAS
>>300
こういうことか?

if ("hoge" == 0) { print "ZERO\n" } else { print "NON-ZERO\n" };
302: 300 04/02/27 01:33 ID:??? AAS
>>301
えっと、ごめんなさい、正確に言うと、
「正の整数」を入れてもらいたいので、そうでない場合は、エラーではじきたいのですが。。。
「dhfshfhjksad」みたいな適当な文字を入れてもエラーをすり抜けてしまうし、
「345」みたいちゃんとした「正の整数」を入れても、エラーをすり抜けてくれる。。。
303
(1): 04/02/27 01:46 ID:??? AAS
>>300
数字は $in{'count'} =~ m/^[1-9][0-9]*$/ で真になるから unless
ブロックに入らない。(数字を含まない) 文字列を数値コンテキスト
で評価すると 0 になるので $in{'count'} == 0 で真になるから unless
ブロックに入らない。

以後、Perl の質問は 2chスレ:php へ。
304: 04/02/27 03:08 ID:zgPOAYIB(1) AAS
>>292
感謝!

(?:(?!foo).)*
これかぁ〜、なるほど実験しみます。
305: 300 04/02/27 04:09 ID:??? AAS
>>303

なるほど、よくわかりました。ありがとうございます。
306: 04/02/27 21:31 ID:??? AAS

307
(1): 04/02/28 22:17 ID:??? AAS
<P class="fuga">hoge</P>

こういうタグをいったんサニタイズした文字列

<P class="fuga">hoge</P>

に対して

m/<(P|H[1-6]|ADDRESS|PRE|BLOCKQUOTE|DIV|OL|UL|DL)(| class="\w{1,20}")>(.*)<\/$1>/
省2
308
(1): 04/02/28 22:22 ID:??? AAS
あ、失敗^-^;
実体参照されちまった。こうです。

&amp;lt;P class=&quot;fuga&quot;&amp;gt;hoge&amp;lt;/P&amp;gt;

m/&amp;lt;(P|H[1-6]|ADDRESS|PRE|BLOCKQUOTE|DIV|OL|UL|DL)(| class=&amp;quot;\w{1,20}&amp;quot;)&amp;gt;(.*)&amp;lt;\/P&amp;gt;/
309
(1): 04/02/28 22:25 ID:K5IxNsG1(1) AAS
まことにスマン。こんどこそ。

&lt;P class=&quot;fuga&quot;&gt;hoge&lt;/P&gt;

m/&lt;(P|H[1-6]|ADDRESS|PRE|BLOCKQUOTE|DIV|OL|UL|DL)(| class=&quot;\w{1,20}&quot;)&gt;(.*)&lt;\/P&gt;/
310
(1): 04/02/28 22:26 ID:??? AAS
>>307-309
外部リンク[html]:www.kt.rim.or.jp
311: 04/02/28 22:32 ID:??? AAS
>>310
く、なるほど。perlの特殊変数と正規表現を混同していたわけか・・・

ありがとうございました。恥ずかしい失敗ですが、一歩前進。

なんども失敗してスマン。
312
(1): 04/02/29 14:20 ID:tS63OhT8(1) AAS
PHPで入力された文字がEUCの半角カナのみかチェックしたいです。
整数のみのチェックは正規表現でできました。

^[0-9]+$ 整数のみの正規表現
EUCの半角カナのみの正規表現は?
313: 04/02/29 14:29 ID:??? AAS
そこまでわかってるならヒント

^(ア|イ|ウ|エ|オ)+$
314: 04/02/29 15:25 ID:??? AAS
>>312
EUC の半角カタカナは、SS2 (8E) + JIS X 0201 カタカナ (A1-DF) だから、
こんな感じでいけそうな気がします。
いかがでしょうか。

^(\x8E[\xA1-\xDF])*$
315: 04/02/29 17:41 ID:??? AAS
マルチにレスすんなよ。
PHPスレで聞いてる
316
(1): 04/03/01 00:32 ID:uvhpNWvz(1) AAS
aaa@a.jp?subject=????
の?以降の件名部分をPHPで削除したいんだけど、

$str= ereg_replace("/?.*/", "" , $str);

では無理だった・・。
これではお話になりませんか?
317
(1): 04/03/01 00:56 ID:??? AAS
?は0文字か1文字を表すメタ文字の予感
318
(1): 316 04/03/01 02:31 ID:??? AAS
317さんのご指摘の元、色々やって出来た予感。
要らないかもしれないけど、書いときます。

$mail = "a@a.a?subject=件名"
preg_match("/^[\w\-\.]+@[\w\-]+\.[\w\-\.]+/","$mail", $matches);
$mail = $matches[0];

正解かどうかわかりませぬが、これでやっていこうと思います。
319: 04/03/01 02:44 ID:??? AAS
>>318
>>317 が言いたかったのは /\?.*/ と思われ。
まあそれで解決してるならいいんだけどね。
1-
あと 670 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.026s