正規表現道場@2ch Part4
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
05/01/17 11:51:25ID:SH1ygN1Pこのスレは有用そうな正規表現を紹介したり、
どう表現したらいいかわからないときに質問をしたりするためのスレッドです。
質問するときは使用言語や得たい結果をなるべく詳しく書きましょう。
註:& や " を書くときには、& " と描いておきましょうね。
Perlメモ
http://www.din.or.jp/~ohzaki/perl.htm
正規表現メモ
http://www.kt.rim.or.jp/~kbk/regex/regex.html
Regex::Diagram.pm
http://www.cc.rim.or.jp/~midorin/mad-p/RegexDiagram.html
正規表現
http://www.cc.rim.or.jp/~midorin/mad-p/perl/benkyou/PRC2kRegex/
UNIX正規表現入門 目次
http://www01.u-page.so-net.ne.jp/jc4/hiroyuki/rex_index.html
Regular Expression(Riue ちゃんの正規表現講座) - Index
http://www.sixnine.net/regexp/
ほとんどは↓のリンク集にまとまっています。
正規表現最新リンク集2002
http://www2.famille.ne.jp/~akio1998/l_grep.html
過去スレ
正規表現道場@2ch
http://pc.2ch.net/test/read.cgi/php/996105815/
正規表現道場@2ch Part2
http://pc2.2ch.net/test/read.cgi/php/1038146241/
正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g
http://pc5.2ch.net/test/read.cgi/php/1069245758/
0320nobodyさん
2005/04/15(金) 19:13:10ID:???0321質問
2005/04/15(金) 19:18:57ID:jvrJ4EBiありがとうございました!
0322muro p5172-ipad05okidate.aomori.ocn.ne.jp/
2005/04/15(金) 20:01:28ID:???ぇ し の ァ ハ
け と ぉ ァ
うはっwww夢がひろがりんぐwwwwww
0323nobodyさん
2005/04/15(金) 20:49:10ID:???0324nobodyさん
2005/04/16(土) 00:12:52ID:???0325nobodyさん
2005/04/20(水) 16:00:48ID:ns2jNcNy<A HREF='http://www.hogehoge.ne.jp/~nakama/'>
<A HREF=http://www.hoge.ne.jp/~nakama/>
<A HREF=http://www.hoge.ne.jp/~nakama/ TARGET=_blank>
上からURLだけを抜き出したいのですがいまいちわかりません。
何となく正規表現はわかっているのですが。
解決になるような事でもなんでもいいので教えてください。よろしくお願いします。
0326nobodyさん
2005/04/20(水) 17:11:27ID:???なんとなく抜き出せるだろうから
なんとなく聞く必要がないんじゃないかと思う
0327nobodyさん
2005/04/20(水) 18:20:03ID:???0328nobodyさん
2005/04/20(水) 18:30:19ID:???0329nobodyさん
2005/04/20(水) 18:46:23ID:???0330nobodyさん
2005/04/20(水) 20:05:32ID:y0ltMBju<select name="a">
<option value="A" selected>■</option>
<option value="B">★</option>
<option value="C">▲</option>
</select>
<select name="b">
<option value="A">■</option>
<option value="B">★</option>
<option value="C" selected>▲</option>
</select>
’;
となっている場合、
『selected』が付いているoptionにマッチさせ、
そのvalue値【A】を$hoge1へ代入するしたいのですが、
正規表現はどのようになるのでしょうか?
$hoge =~ /value="?([^"]+)"? selected/g
$hoge1 = $1;
$hoge2 = $2;
↑これでは、ダメでした。
御教授 お願い致しますm( __ __ )m
0331nobodyさん
2005/04/20(水) 21:26:49ID:???その正規表現でもAとCを取り出せるんだけどね。
0332nobodyさん
2005/04/21(木) 00:11:41ID:???@array = $str =~ /<option\s+(?:\S+\s+)*?(?:value\s*=\s*(?:"([^"]*)"|'([^']*)'|(\S*)).*?selected|selected\s+(?:\S+\s+)*?value\s*=\s*(?:"([^"]*)"|'([^']*)'|(\S*)))\s*(?:\S+\s+)*?>/g;
$hoge1 = join"",splice @array,0,6;
$hoge2 = join"",splice @array,0,6;
0333nobodyさん
2005/04/21(木) 00:17:28ID:???@array = $str =~ /<option value="([^"]+)" selected>/g;
$hoge1 = shift @array;
$hoge2 = shift @array;
0334nobodyさん
2005/04/21(木) 00:53:08ID:???@array = $html =~ /<a\s+.*?href\s*=\s*(?:"([^"]*)"|'([^']*)'|(\S*)).*?>/gi;
push @url, join"", splice @array,0,3 while @array;
0335nobodyさん
2005/04/21(木) 09:53:22ID:L6TjsDSV以下のように自分で決めたブロック要素的なコメントタグを挟んでいます。
---------------------------
<!--mytag-->
aaa
<!--mytag-->
bbb
<!--/mytag-->
ccc
<!--/mytag-->
ddd
<!--mytag-->
eee
<!--/mytag-->
----------------------------
この中で、内側にそれ以上自分で決めた同一コメントタグが
入っていない部分、つまり、
<!--mytag-->
bbb
<!--/mytag-->
と、
<!--mytag-->
eee
<!--/mytag-->
の部分のみ取り出したいのですが、どのような式を書けば良いでしょうか。
0336335
2005/04/21(木) 11:55:55ID:L6TjsDSV$s = "<¥!¥-¥-mytag¥-¥->";
$e = "<¥!¥-¥-¥/mytag¥-¥->";
$rgexp = "/$s(?:(?!($s|$e)).)+$e/s";
で判別できました。
0337nobodyさん
2005/04/21(木) 13:58:44ID:???掲示板に書き込まれた本文の行末に改行タグがある場合、
それを除去するという処理を加えたいと思っています。
$textが"test<BR><BR><BR><BR><BR><BR><BR><BR><BR>"などのように、
文末に<BR>がある限り、それを取り除く処理にしたいと思います。
この場合ですと、"test"という文字列だけにしたいと思っています。
$textが"test<BR><BR><BR><BR>test2<BR><BR><BR><BR><BR>"であれば、
"test<BR><BR><BR><BR>test2"にしたいと思っています。
while ($text =~ /<BR>$/) {
$text =~ s/<BR>$//g;
}
この記述で動かないのですが、どこが原因なのでしょうか。
0340330
2005/04/22(金) 00:10:20ID:???アドバイスありがとうございます。
>>333様
御教授ありがとうございます。
早速試してみましたが、うまく代入されませんでした。。。
$_ = $hoge;
my @hoge = /value="(.+)" selected/g;
$hoge1 = $hoge[0];
・
・
・
・
これで、自己解決いたしました。
0341nobodyさん
2005/04/24(日) 04:15:14ID:???>>333がダメってのは、「$str」 を 「$hoge」 にしてないだけだと思うがw
自分的には↓で済む気がする。
my ($hoge1, $hoge2) = $hoge =~ /<option\s*?value="([^">]*?)"\s*?selected>/g;
あと $hoge は、ヒアドキュメントにしる。
0342nobodyさん
2005/04/26(火) 15:49:33ID:???「先頭から最後まで<br>と\s以外の文字が1つもない」
・・・
0344nobodyさん
2005/04/26(火) 22:35:00ID:???iオプション付けてね
0345nobodyさん
2005/05/06(金) 00:14:31ID:???0346nobodyさん
2005/05/10(火) 20:33:44ID:???マッチさせたいんですけど、うまく動いてくれません。
どうすればいいでしょうか。
$txt = "トマトきゅうりピーマンなすすいか";
if(mb_eregi("[きゅうりすいか],$txt)){echo "合致";}
0347nobodyさん
2005/05/10(火) 20:45:59ID:P1c+fxiDうぇwwwwwwwwwwwwwwwおkwwwwww
wwwwwwwwwwwwっうぇ
wwwwwおkwww
wwwwwwwwwwwwwwwwwwwwwwwww
0349nobodyさん
2005/05/10(火) 21:56:28ID:???こうですか?
0350nobodyさん
2005/05/10(火) 22:04:57ID:???0351nobodyさん
2005/05/10(火) 22:14:43ID:???師匠これでもだめです。
ヒントください
0352nobodyさん
2005/05/10(火) 22:14:42ID:???http://www.din.or.jp/%7Eohzaki/regex.htm#And
0353nobodyさん
2005/05/10(火) 22:33:57ID:???mb_eregi("(?=.*きゅうり)(?=.*すいか)",$txt)
これでできました。
0354nobodyさん
2005/05/11(水) 14:06:16ID:8aMwQX6hについてなのでここでお願いしますm(_ _)m
CSV形式のファイルをwordに取り込んだときに、CSV特有の文字列にはダブルクォート、その中のダブルクォートにも
ダブルクォートの部分がそのまま残ってしまって困ってるので、wordの置換機能で削除しようと思ってます。
単純にダブルクォートだけなら
検索:"(*)"
置換:\1
で、できますがこれだと
"19""1238","a9a0","0198"
などでしくじってしまいます。
どういう式にすればいいでしょうか?
Perlの知識はありますので、回答はwordでの式でなくてもPerlでの式でも大丈夫です。
宜しくお願いしますm(_ _)m
0355354
2005/05/11(水) 14:14:27ID:8aMwQX6hわかりませんでした・・・・orz
置換演算子でヒットしなかったのはなんでだろ・・・・
0356nobodyさん
2005/05/11(水) 18:18:19ID:???ワードってPerl形式の正規表現使えたっけ?
それにPerlの知識があるなら、CSVをPerlでいじってからワードに取り込めばいいだけじゃ?
ついでにいえば、Excelで取り込めば、適切なデータになるじゃん。
それをワードに貼り付けるなり埋め込むなりすればいいんじゃ?
なんというか、道具があるのに変に知識だけ持ってるから
逆に面倒にしてるだけだし・・・
0357354
2005/05/11(水) 20:09:41ID:8aMwQX6hwordの置換はperlとはちょっと違いますけど、考え方は同じようなものなので。
データはワードで使いたいんです。
Excelで取り込むと適切なデータになりますが、それをwordにコピペするとちょっと違う
ことになってしまうんです。
wordで普通に「挿入」→「表」で作る表とは違う、オブジェクトとしての表になってしまって
後からいじったりできないんです。
Perlでいじってからというのは確かに、Text::CSV_XS使ってやればできますが、
毎度一旦Perlを通すのもあれですし、仕事場ですので毎度同じPCを使えるわけでは
ないのです。wordなんかの基本ソフトはどのPCにでも入ってますが。
できればwordだけでやりたいので、wordの置換で、と思ったのですが。
CSVのクォート削除正規表現って簡単そうで、結構難しいんですかね?
私が未熟だからだけかと思ったら、このスレの方でもパッはでてこないんですね。
でも、もしもわかるかたいましたらお願いします。1日1回は見に来ますので。
0358nobodyさん
2005/05/11(水) 20:25:22ID:???>wordで普通に「挿入」→「表」で作る表とは違う、オブジェクトとしての表になってしまって
>後からいじったりできないんです。
悪いことは言わない、MS WORDの入門書なり勉強やり直した方が良いよ。
Perl弄ってるとか置換作業とか変な知識とか作業要らない。
お前さんが言ってる事は、普通に出来る。
聞いてると、ただWORDを使いこなせない工場とかのおじちゃんおばちゃんレベル。
0359nobodyさん
2005/05/11(水) 21:16:53ID:???ハイライト表示を実現したいと思っています。
HTML ソース内のある単語を置換するときに
タグ内にその単語が含まれる場合は無視する
という表現はどのように書けばよいでしょうか。
言語は Perl です。
0360nobodyさん
2005/05/11(水) 21:25:19ID:a0NETEmds/"((?:[^"]|"")*)"/$1/g
s/""/"/g
の2回にわけるのが楽だと思われる。
0361nobodyさん
2005/05/11(水) 21:28:57ID:???でもって、そのセルの部分をドラッグドラッグして全部選択して、Ctrl+Cでコピーして
ワードでCtrl+Vで貼り付けしたら、普通にワードで表作った形式になったんだけど・・・
やっぱり、MS Officeの知識が無いって事でFA?
0362359
2005/05/11(水) 21:32:07ID:???$output =~ s#(?<=>)([^<]+)?\b($regexp)\b#$1<B style="color:black;background-color:\#ffff66">$2</b>#gis;
でできました。
0363nobodyさん
2005/05/11(水) 21:39:20ID:a0NETEmd正規表現だけでなんとかしようと考えないほうがいいと思うよ。
オレならこんな感じにするかねぇ。
$s = <<HTML;
<html>
<a href="foo.html">foo</a>
</html>
HTML
$s = ">$s<";
$s =~ s/>([^<]*)</$_ = $1; s|foo|baa|g; ">$_<"/ge;
$s = substr($s, 1, -1);
print $s;
0364354
2005/05/12(木) 17:56:56ID:mNlaSBNN普通にできるというのは、エクセルからのコピペや、ワードでの置換作業なしに
既存のword文書にCSVをworr形式の表化して取り込めるということでしょうか?
ヘルプでは見つけられませんでしたが、もしかしたら私のword2000ではできないのかな。
何年版のwordでしょうか?
>>361
あれ、できましたね;
XLSの取り込みと勘違いしたのかもしれません。
0365354
2005/05/12(木) 17:58:39ID:mNlaSBNNありがとうございます!
一旦外枠だけはずしてやるんですね^^
さすがですm(_ _)m
0366nobodyさん
2005/05/12(木) 18:04:52ID:???俺もやってみた。
拡張子CSVはExcelと関連付けられているので、CSVファイルをダブルクリックして開く。
CSVは正常な形に各セルに表示されているのを確認。
先に、Excelで開いたCSVのデータを格子状に罫線を引き、
ドラッグして貼り付けたい範囲を選択してCtrl+Cでクリップボードにコピー。
その後、Wordを新規に開き、そこへ、Ctrl+Vで貼り付けてみた。
普通にWordで表を作った見たいな形式に張り付いた。
使用したのはMS Office2000。
0367820
2005/05/13(金) 16:57:34ID:JEsyMCCs「httpで始まって--で終わる文字列」を正規表現で表現すると
http*-- でいいだろうと思って検索かけたところひっかかりません。
しょうがないので、 http.-- に表現を変えてみたのですが、これもヒットせず。
どなたか、こうやって書けばいいんだよと教えていただけると助かります。
0368nobodyさん
2005/05/13(金) 17:39:23ID:???だろうなぁ。
0369367
2005/05/13(金) 17:54:22ID:JEsyMCCs回答ありがとうございます。うまくいきました。
0370nobodyさん
2005/05/14(土) 16:27:37ID:???$string = 'あ表示テスト';
↑↓この部分が絵文字です
$s1 = mb_ereg_replace('([--])',
bin2hex("\\0"), $string);
こうすると$s1が あ表示テスト5c305c305c305c305c305c305c30 になってしまいます
ttp://www.nttdocomo.co.jp/p_s/imode/make/emoji/index.html ここのSJIS16進数にしたいのですが、どこがおかしいですか?
0371nobodyさん
2005/05/14(土) 16:55:30ID:???正規表現を使わず$stringに絵文字に入れを$string全体をbin2hexするとうまくできました
0372nobodyさん
2005/05/15(日) 16:05:51ID:???どうすればよいでしょうか?PHPです。
0374nobodyさん
2005/05/17(火) 13:35:15ID:9ytTXCmSつまりaaaaaaとか55555555とか ZZZZZとか。入力値に対してチェックを
かけたいのでどの文字かは入力されるまで分かりません。
PHPでかくと ereg('^([a-zA-Z0-9]*)$', $str)
みたいなスカっとおさまる書き方はないのでしょうか?
配列に文字を入れてループで回してチェックするしかないのでしょうか?
0375nobodyさん
2005/05/17(火) 14:44:14ID:???PCRE が使えるなら preg_match('/^([a-zA-Z0-9])\1+$/', $str) でしょうか。
どうも ereg() ではパターン内での後方参照が使えないっぽいんですが、
そういうものなのでしょうかね?
man 7 re_format 見る限りは POSIX 1003.2 の拡張正規表現でも使えそうなんですが。
0376nobodyさん
2005/05/17(火) 15:18:00ID:9ytTXCmSためしてみたところうまく機能しました!
有り難うございます!
やっぱereg()では後方参照つかえないんですかねぇ
0377370
2005/05/17(火) 15:25:00ID:???$test = 'あん'; //機種依存のsjis文字入り(同じ文字はありません)
$test =~ s/\G((?:[\x80-\x9F\xE0-\xF7\xFA-\xFC][\x40-\x7E\x80-\xFC]|[\x00-\x7F]|[\xA1-\xDF])*)([\xF8\xF9][\x40-\x7E\x80-\xFC
])/$1/eog;
これはPerlスクリプトなんですが、これをPHPに移行したいと思います。
eogを除いてpreg_replaceすると>>370のように何故か5c30になってしまいます。
$test1 = mb_ereg_replace("([\xF8\xF9][\x40-\x7E\x80-\xFC])","\\1" , $test);
これはWarning mbregex compile err: mismatch multibyte code length in char-class range in となってしまいます
どこがおかしいのですか??
0378nobodyさん
2005/05/17(火) 15:44:02ID:???多分、ダブルクオートの中でバックスラッシュを使っているので、
正規表現エンジンに渡る前にバックスラッシュが展開されているのではないかと。
"\\xF8" みたいにするか '\xF8' みたいにシングルクオートにすると良いかと。
0379nobodyさん
2005/05/17(火) 19:27:46ID:???ありがとうございます
シングルクオートに変更したところ、そのエラーは出なくなりましたが、次は
mbregex compile err: too short multibyte code string in
と出るようになってしまいました
何が短いのですか?
0380nobodyさん
2005/05/18(水) 10:51:05ID:???正規表現スレなのでスレ違いなのですが自分なら
<?php
$emoji = pack("n*", 0xF89F, 0xF8A0, 0xF8A1);
$test = "絵文字test1".$emoji."test2";
$count = mb_strlen($test, "sjis");
for ($i = 0; $i < $count; $i++) {
$char = mb_substr($test, $i, 1, "sjis");
$char_hex[1] = 0;
if (strlen($char) == 2) $char_hex = unpack("n", $char);
if ($char_hex[1] > 0xF89E and $char_hex[1] < 0xF9FD) echo " <b>".bin2hex($char)."</b> ";
else echo $char;
}
?>
こうする。
0381nobodyさん
2005/05/18(水) 13:05:20ID:JNoGnyuI0382nobodyさん
2005/05/18(水) 17:17:50ID:???> http://www.din.or.jp/~ohzaki/perl.htm
> > HTMLタグの正規表現
> > $comment_tag_regex =
> > '<!(?:--[^-]*-(?:[^-]+-)*?-(?:[^>-]*(?:-[^>-]+)*?)??)*(?:>|$(?!\n)|--.*$)';
ってあるんだけど、これ通すと
my $str = '<!--- abcde --->'; とか
my $str = '<!-- \n var i=0; i--; document.write(i); \n // -->'; とか
全然うまくとれないんだけど、どう改造すればいい?
(?:[^>-]*(?:-[^>-]+)*?)??
↓
(?:[^>-]*(?:-[^>-]*)*)??
こうすると ↑↑ のはとってくれるけど、今度は
my $str = '<!-- comment -- cdata --> comment -->';
これが最後までとってくれなくなって困る orz
0383382
2005/05/18(水) 17:30:24ID:???× my $str = '<!-- comment -- cdata --> comment -->';
○ my $str = '<!-- comment -- cdata -- > quote_comment -->';
こんなで。
0384382
2005/05/18(水) 17:57:38ID:???それだったら /<!--.*?-->/ で事足りるのかw
スレ汚しスマヌ
0385nobodyさん
2005/06/02(木) 19:31:18ID:???Perlで試したところ
(?=.*AAA)(?!.*BBB)
でいける感じなのですが、
開発に使用しているのはUNIXのC言語です。
(?=や(?! を使わないで、これと同じことを記述できませんでしょうか。
0386nobodyさん
2005/06/02(木) 20:12:51ID:???0387nobodyさん
2005/06/02(木) 20:38:20ID:???「UNIXのC言語」といってもいろんな正規表現ライブラリがあるわけですが・・・
# ちょうどプログラム板の正規表現スレでそんな話題が。
POSIX regex (re_format(7)) だと簡単には書けそうにないので
>>386 みたく二回正規表現マッチさせるか、
(?= や (?! をサポートした正規表現ライブラリを使うのが良いのでは?
0388nobodyさん
2005/06/03(金) 17:12:04ID:kgnGijhBK2Editorというエディターを使用して、ある文章の中にある
「$英数字」という部分を検索したいのですが、
どのように正規表現を記述していいのか分かりません。
$英数字の前後には半角スペースが入っており、それに続いてまた記述があるので、
半角スペース前後まで検索したいと思っています。
例えば、
test $kensaku test
という個所があるとすると、$kensakuのみ検索対象にしたいのです。
K2Editorのヘルプを見る限り、$を使用するためのエスケープが\eと書いていました。
とすると、\e$[a-zA-Z_]+
と思ったのですがうまくいきませんでした。
ご教授下さい。
0391nobodyさん
2005/06/03(金) 18:59:45ID:???0394nobodyさん
2005/06/05(日) 13:57:15ID:OswuRoJX・使えるのは半角英数字アンダーバーのみ
・最初の文字は英字のみ
宜しくお願いします
0395nobodyさん
2005/06/05(日) 17:29:54ID:???ってのはだめ?
0396nobodyさん
NGNG文字数制限はない? 1文字以上ならOKの例で書いた
0397nobodyさん
2005/06/07(火) 20:45:12ID:???>>396
両方無理でした
普通にアンダーバー最初に書いても通っちゃいました
もしかして
if($FORM{'id'} =~ /^[a-zA-Z]\w+/);
じゃなくて
unless($FORM{'id'} =~ /^[a-zA-Z]\w+/);
みたいにしないとダメ?
0399nobodyさん
2005/06/09(木) 19:55:53ID:???0400nobodyさん
2005/06/09(木) 20:52:22ID:???0401nobodyさん
2005/06/09(木) 20:53:51ID:???0402nobodyさん
2005/06/09(木) 21:31:28ID:???すいません、もうしません…
0403nobodyさん
2005/06/10(金) 09:18:36ID:???0404nobodyさん
2005/06/10(金) 21:49:19ID:???0405nobodyさん
2005/06/11(土) 18:52:57ID:yQRzdV10スクリプトを使っていますが
$url =~ m!(http:)?(//)?([^:/]*)?(:([0-9]+)?)?(/.*)?!;
if ($3) {$host = $3;}
if ($5) {$port = $5;}
if ($6) {$path = $6;}
$path =~ s/#(.)*$//;
http://User:Password@…というBasic認証のURLでユーザー名とパスワードを
抽出するためにはどう改造したらよいですか?
0407405
2005/06/11(土) 21:12:07ID:yQRzdV10昔、どこかのサイトに掲載されてたのをコピペで使ってます。
改造でなく、書き直しして頂いても、ありがたいです。
0408nobodyさん
2005/06/11(土) 21:20:56ID:???0409nobodyさん
2005/06/12(日) 06:55:46ID:???0410nobodyさん
2005/06/13(月) 09:18:09ID:???0412nobodyさん
2005/06/18(土) 01:50:56ID:ioO/WA9Kperlで書かれたソースをphpに移行しようと試みています。
以下のperlのソースをphpで書くとどのようになりますでしょうか。
$data =~ s/"/"/g;
一応、
preg_replace("s/"/"/g", $data);
かなと思ったのですが、マニュアルを読んでみると、
phpの正規表現には修飾子「g」は無い、とあります。
他の関数を使う、関数をいくつか組み合わせるなど、
違う表現の仕方が必要になってくるのでしょうか。
お力添え宜しくお願いします。
0413nobodyさん
2005/06/18(土) 04:07:16ID:???preg_replaceはグローバルマッチだお!
preg_replace('/"/','"e;',$data);
0414nobodyさん
2005/06/18(土) 04:11:00ID:???$data = preg_replace('/"/','"',$data);
0415nobodyさん
2005/06/18(土) 08:51:00ID:7Fs175F40416nobodyさん
2005/06/18(土) 08:57:03ID:ioO/WA9K<$data = preg_replace('/"/','"',$data);
ご返答ありがとうございます。
グローバルマッチでしたか、申し訳ありません、勉強不足でした。
マニュアルを確認してみたところ、確かにそのような記述がありますね。
「limitが 省略されるか -1 の場合、マッチするものは全て置換されます。
」
>mixed preg_replace ( mixed pattern, mixed replacement,
>mixed subject [, int limit])
>subjectに関して patternを用いて検索を行い、 replacementに置換します。
>limitを指定した場合、limit 回のマッチまで置換が行なわれます。
>limitが 省略されるか -1 の場合、マッチするものは全て置換されます。
ありがとうございました!
0418nobodyさん
2005/06/20(月) 17:29:30ID:???6・19人権擁護法案に反対する国民集会の音声ファイル(各20-40MB)
http://www.powup.jp/jinken/20050619/1_hiranuma_furukawa.mp3
http://www.powup.jp/jinken/20050619/2_hirata.mp3
http://www.powup.jp/jinken/20050619/3_otsukotsu.mp3
http://www.powup.jp/jinken/20050619/4_chihougiinn.mp3
3番目は特におもしろい
0419nobodyさん
2005/06/22(水) 15:46:50ID:e2RB9R1Aエラーを表示させるために[:punct:]を使ったところ
「与」などの一部の文字が想定外のマッチをしてしまうのですが
どうやって回避すれば良いのでしょうか…
こんな感じで書いています。
if (preg_match("/[[:punct:]]/", $_GET['word'])) {
echo "記号が含まれています。";
exit;
}
■ このスレッドは過去ログ倉庫に格納されています