トップページ⇒php
986コメント301KB

正規表現道場@2ch

■ このスレッドは過去ログ倉庫に格納されています
0001ヽ(´▽`)ノ2001/07/26(木) 09:03ID:???
以外と毛嫌いして居る人も多そうな正規表現、
でもperlを使いのなす上で避けて通れない道だったりするかもです。
そこで、スクラップブック的に目に止まったカッコイイ正規表現を
書き留めておこうと言うスレッドです。
質問する時は言語と、得たい結果をなるべく詳しく書いてね。

取り合えず僕が知ってる有用なリンクです。
http://www.din.or.jp/~ohzaki/perl.htm
http://www.kt.rim.or.jp/~kbk/regex/regex.html

もっとイイ(・∀・) リンクは>>2-10さん辺りが書いてくれるカモ・・・・
0058名無しさん@お腹いっぱい。01/09/05 21:06ID:zThM7aIk
$input = $ARGV[0];
$input =~ s/([.]*)/-----$1-----/; #inputを-----で囲みたいです
print "$input\n";
ってやって、、
$.test.pl 111{}222{}333
ってやると
----------111{}222{}333
こうなります、
-----111{}222{}333-----
何故こうならないのでしょうか、
と言うか目的からは程遠い所なんですが、多分バックトラッキングが理解
出来てないからだと思うのですが。
絶対僕の思ったように動かないに決まってます。
0059名無しさん@お腹いっぱい。01/09/05 21:15ID:ongErcHE
>>58

$input =~s/(.*)/--------$1---------/;


てゆーか囲むだけなら

$input = '--------' . $input . '---------';

で良いべさ
0060名無しさん@お腹いっぱい。01/09/05 21:27ID:zThM7aIk
ありがとうです、
えと、それはそうなんですが正規表現の勉強と言う事で (^^
ちなみにevalして
$input =~ s/([.]*)/'-----'.$1.'-----'/e;
こんな風にしても結果は同じなんです。
何か一歩も前に進めない感じで   とほほ
0061名無しさん@お腹いっぱい。01/09/05 22:13ID:L1KgWH9s
>60
59が答を書いてるだろがゴルァ
.を[]の中に入れたら任意の1文字じゃねーぞゴルァ
0062名無しさん@お腹いっぱい。01/09/05 22:37ID:mJCW7B8k
>>60
とほほつながりでここでも見て勉強すれ。
http://tohoho.wakusei.ne.jp/wwwperl1.htm#Expr
0063名無しさん@お腹いっぱい。01/09/06 01:36ID:ji/LQ9h6
ありがとう! 、何だかスレのレベルを一気に下げちゃったみたい
ですけど、 (^^;
しかし上手く動いてくれないんだよなぁ・・・
詳説正規表現って言うのは難しすぎるし
とほほに逝って来ますぅ
0064名無しさん@お腹いっぱい。01/09/06 01:55ID:Ut37ZYfk
みんな*つかってるけど
(.*)じゃなくて(.+)じゃないの?
0065名無しさん@お腹いっぱい。01/09/06 02:02ID:jxYvqj8.
>>64
場合による
0066名無しさん@お腹いっぱい。01/09/06 02:07ID:Ut37ZYfk
>>65
(.*)って,どんな時に使うんですか?
文字に反応しない時がありそうなんで,まったく想像がつかないんですが。
0067名無しさん@お腹いっぱい。01/09/06 06:20ID:sO/Rg6CI
梅干し食べて酸っぱい時。
0068名無しさん@お腹いっぱい。01/09/06 06:30ID:jxYvqj8.
>>66

>>62のリンク先ぐらい見てから聞け。
0069名無しさん@お腹いっぱい。01/09/08 10:24ID:???
(*^o^*)
0070名無しさん@お腹いっぱい。01/09/08 13:08ID:Lvui7oF6
今日の勉強のおと

正規表現の特殊文字 9連発

. (どっと)
*(アスタリスク)
+(ぷらす)
?(くえすちょん)
[(れふとすくえあ
](らいとすくえあ
`(ばっくくおと
$(だら
\(ばくすらしゅ
0071名無しさん@お腹いっぱい。01/09/08 19:26ID:???
>70
 大昔backslashをもじった「バクスラ」ってphotonのチームがありましたなぁ

 ちなみに「{」「}」と「<」「>」はどう読んでます?
0072名無しさん@お腹いっぱい。01/09/08 19:47ID:Lvui7oF6
れふとかーりーぶらんけっと {
らいとかーりーぶらんけっと }
れふとぱーれん (
らいとぱーれん )
0073名無しさん@お腹いっぱい。01/09/09 14:29ID:NSJpQxzQ
 ○
□+/
 大

どらごんくえすと
0074名無しさん@お腹いっぱい。01/09/09 20:23ID:???
>72
 どもでした:-)

>73
 ワラタ(笑)
0075名無しさん@お腹いっぱい。01/09/11 12:31ID:StTUkJnk
任意の2文字以上続く文字
例えば

************************
とか

■■■■■■■■■■■■
とか

を

****

■■■■

とか短くする正規表現教えてくなさい
0076名無しさん@お腹いっぱい。01/09/11 12:41ID:???
>>75 >>1のリンクぐらい見てから聞け。

#! perl

$str = '■■■■■■■■■■■■';
$str =~s/(?:■){2,}/■■/;

print $str;
0077名無しさん@お腹いっぱい。01/09/11 18:42ID:WwJLyJnk
perlって奥深い
0078petronius01/09/11 20:22ID:???
>>76
「任意の」2文字以上続く文字だろ?
$str =~ s/(.)\1+/$1/g;
0079petronius01/09/11 20:27ID:???
ああ、■とかのときは $str =~ s/(..)\1+/$1/g; に変えてね。
しかし、これじゃ任意じゃないな。スマソ。
0080名無しさん@お腹いっぱい。01/09/11 21:34ID:???
じゃあファイナルアンサー

$str =~ s/(.|..)\1+/$1$1/g;
0081名無しさん@お腹いっぱい。01/09/12 02:40ID:???
ドロップアウト
0082名無しさん@お腹いっぱい。01/09/24 10:09ID:???
変なスレばっかなので上げっ
詳説買ってきたよ〜 でも難しい  (鬱
0083名無しさん@お腹いっぱい。01/09/25 05:55ID:I2K.uRSs
英単語の先頭の文字だけを大文字に変換する方法があったら教えてくだされ。
this is a pen
を
This Is A Pen
とかにしたいの。よろしく〜。
0084JAPU@CGI関連のコンテンツは移動した...01/09/25 06:16ID:???
$hoe = join " ", map { ucfirst } split /\s+/, $moe;
...と思ったけど、正規表現スレッドなので、
s/(?<!\S)(.)/uc $1/eg;
としておこう。:-)

# 詳説正規表現は難しいね。
0085名無しさん@お腹いっぱい。01/09/25 12:35ID:???
>>83

別解で

s/(\w+)/ucfirst $1/eg;
0086名無しさん@お腹いっぱい。01/09/26 00:14ID:???
s/\b(\w+)\b/\u$1/g
0087名無しさん@お腹いっぱい。01/10/04 15:47ID:KFx.YrhY
あのお、教えてください。
正規表現でShift_JISの半角カナを全角カナに変換することは
できますでしょうか。
ちなみに最初は下記のようなのを書いてみたけど、Shift_JISの下位バイトに
半角カナに一致するコードが含まれることがあって失敗しました。

%han2zen = ( 'ア'=>'ア', …以下半角=>全角の対応 );
my $re_hankana = '[。-゚]';
my $re_dakuten = '[゙゚]';

#成功例
my $good = "(゚Д゚)ハァ?(゚Д゚)ハァ?";
$good =~ s/($re_hankana$re_dakuten?)/$han2zen{$1}/g;
print "$good\n";

#失敗例
my $bad = "(゚Д゚)ほげ?(゚Д゚)ほげ?";
$bad =~ s/($re_hankana$re_dakuten?)/$han2zen{$1}/g;
print "$bad\n";
00888701/10/04 15:51ID:???
上の検証用に半角全角対応ハッシュも書いときます。

my %han2zen = (
'。'=>'。', '「'=>'「', '」'=>'」', '、'=>'、', '・'=>'・', 'ヲ'=>'ヲ', 'ァ'=>'ァ',
'ィ'=>'ィ', 'ゥ'=>'ゥ', 'ェ'=>'ェ', 'ォ'=>'ォ', 'ャ'=>'ャ', 'ュ'=>'ュ', 'ョ'=>'ョ',
'ッ'=>'ッ', 'ー'=>'ー', 'ア'=>'ア', 'イ'=>'イ', 'ウ'=>'ウ', 'エ'=>'エ', 'オ'=>'オ',
'カ'=>'カ', 'キ'=>'キ', 'ク'=>'ク', 'ケ'=>'ケ', 'コ'=>'コ', 'サ'=>'サ', 'シ'=>'シ',
'ス'=>'ス', 'セ'=>'セ', 'ソ'=>'ソ\','タ'=>'タ', 'チ'=>'チ', 'ツ'=>'ツ', 'テ'=>'テ',
'ト'=>'ト', 'ナ'=>'ナ', 'ニ'=>'ニ', 'ヌ'=>'ヌ', 'ネ'=>'ネ', 'ノ'=>'ノ', 'ハ'=>'ハ',
'ヒ'=>'ヒ', 'フ'=>'フ', 'ヘ'=>'ヘ', 'ホ'=>'ホ', 'マ'=>'マ', 'ミ'=>'ミ', 'ム'=>'ム',
'メ'=>'メ', 'モ'=>'モ', 'ヤ'=>'ヤ', 'ユ'=>'ユ', 'ヨ'=>'ヨ', 'ラ'=>'ラ', 'リ'=>'リ',
'ル'=>'ル', 'レ'=>'レ', 'ロ'=>'ロ', 'ワ'=>'ワ', 'ン'=>'ン', '゙'=>'゛', '゚'=>'゜',
'ガ'=>'ガ', 'ギ'=>'ギ', 'グ'=>'グ', 'ゲ'=>'ゲ', 'ゴ'=>'ゴ',
'ザ'=>'ザ', 'ジ'=>'ジ', 'ズ'=>'ズ', 'ゼ'=>'ゼ', 'ゾ'=>'ゾ',
'ダ'=>'ダ', 'ヂ'=>'ヂ', 'ヅ'=>'ヅ', 'デ'=>'デ', 'ド'=>'ド',
'バ'=>'バ', 'ビ'=>'ビ', 'ブ'=>'ブ', 'ベ'=>'ベ', 'ボ'=>'ボ',
'パ'=>'パ', 'ピ'=>'ピ', 'プ'=>'プ', 'ペ'=>'ペ', 'ポ'=>'ポ',
);
0089名無しさん@お腹いっぱい。01/10/04 17:00ID:???
>>87
jcodeじゃだめか?
ってここは正規表現スレだな
0090名無しさん@お腹いっぱい。01/10/04 22:34ID:a.Dq8AyI

$hoge =~ s/([\x81-\x9F][\x40-\x7E]|[\xE0-\xEF][\x80-\xFC]|[\xA1-\xDF]|.)/$han2zen{$1} or $1/egs;

いつも通りこう書いたんだけど、$bad はやっぱり上手くいかない。
縦棒って最初にマッチした奴にマッチして終わりじゃなかったっけ?
誰か教えてくれ。
0091名無しさん@お腹いっぱい。01/10/05 04:22ID:???
>>90
>縦棒って最初にマッチした奴にマッチして終わり
そうだよ。
うえのやつは全角相当のパターンが違うんでないの。
見やすくするためスペース入れると、

×( [\x81-\x9F][\x40-\x7E] | [\xE0-\xEF][\x80-\xFC] | [\xA1-\xDF] | . )
○( [\x81-\x9F\xE0-\xEF][\x40-\x7E\x80-\xFC] | [\xA1-\xDF] | . )

だと思う。少なくとも$badはこれでいけた。
00929001/10/05 20:50ID:???
>>91
ああそうかぁ。サンクス。
http://ash.or.jp/ash/tips_prog/htm/code.htm
ココみてパターン書いたんだけど、見方間違えてたよ。

そういえば最後のドットは要らないかな、と思った。
00938701/10/07 17:56ID:G6cvoZz6
>>89-92
ありがとー。
00948701/10/07 18:28ID:???
まとめ。Shift_JISの半角カナを全角に変換。
my %han2zen = { >>88参照 };
my $re_zen = '[\x81-\x9f\xe0-\xef][\x40-\x7e\x80-\xfc]'; # 全角
my $re_han = '[\xa1-\xdf]'; # 半角カナ
my $re_dak = '[\xde\xdf]'; # 半角の濁点と半濁点

my $s = "(゚д゚)ウマー(゚Д゚)げ?";
$s =~ s/($re_zen|$re_han$re_dak?)/$han2zen{$1} or $1/ge;
print "$s\n";
00958701/10/07 18:42ID:???
う。>>94だと"マ゙"が変換されずに残っちゃうです。
>>89-92の人の責任じゃなくて俺のせいっす。鬱だ。。。
00968701/10/08 01:19ID:???
よし!これで大丈夫。たぶん。。きっと。。。

# Shift_JISの半角カナを全角に変換する
my %han2zen = { >>88, 'ヴ'=>'ヴ' } # 88のに1コ追加
my $re_zen = '[\x81-\x9f\xe0-\xef][\x40-\x7e\x80-\xfc]'; # 全角
my $re_han = '[\xa1-\xdf]'; # 半角カナ
my $re_dak = '[\xb3\xb6-\xc4\xca-\xce]\xde'; # 半角カナ濁点
my $re_hdak = '[\xca-\xce]\xdf'; # 半角カナ半濁点

my $s = "(゚д゚)ヴマ゙ー(゚Д゚)げ?";
$s =~ s/($re_zen|$re_dak|$re_hdak|$re_han)/$han2zen{$1} or $1/ge;
print "$s\n";
0097名無しさん@お腹いっぱい。01/10/10 00:05ID:???
apacheで、
ttp://hogehoge/cg\img.jpg
を↓にリダイレクトしたい。
ttp://hogehoge/cg/img.jpg

しかし↓これだと動かない。
RedirectMatch ^/([^\?]*)\\(.*)$ /$1/$2
なぜだか判る?
0098名無しさん@お腹いっぱい。01/10/10 00:06ID:???
pathに\はおかしいのでは?
0099名無しさん@お腹いっぱい。01/10/10 00:09ID:???
>>98
しかしIEだとちゃんと表示できるからユーザーは気が付かずに使っちゃうのよ。
他の正常なブラウザだと404になるからリダイレクトしたいの。
01009001/10/10 01:00ID:???
mod_rewriteでの記法はよく知らんけど、
最初の ^/ は、 / にしないと駄目でない?
01019001/10/10 01:04ID:???
mod_rewriteじゃなかった(恥
0102名無しさん@お腹いっぱい。01/10/10 01:54ID:???
良く調べた! SIFT_JIS決め撃ちの所で使えるね (・∀・)♪
01039701/10/10 21:41ID:???
>>97
RedirectMatch ^/([^\?]*)\\\(.*)$ /$1/$2
なんか知らぬが解決した。
0104 01/10/12 01:11ID:???
$http_URL_regex=「URLの正規表現」(長いので割愛)

として、掲示板スクリプトの書き込みの中にあるURLに
こうやって自動リンク貼ってる。↓

$data =~ s/($http_URL_regex)/<a href="$1">$1<\/a>/go;

現状だと
http://www.test.com/dir/index.html が
<a href="http://www.test.com/dir/index.html>;http://www.test.com/dir/index.html<;/a> に
置き換わるだけだけど、URL表示の/(スラッシュ)を「<wbr>/」に
置き換えるようにしたい。

具体的には、上の例でいうと
<a href="http://www.test.com/dir/index.html>;http://www.test.com<;wbr>/dir<wbr>/index.html</a>
って感じにしたい。

一行が長くてゴメソ。分かる人教えて。
0105名無しさん@お腹いっぱい。01/10/12 02:04ID:???
>>104
分かるもなにも、その$http_URL_regexってやつを
見せてもらわんと。そんなに長いんか?
も、もしかして、大崎氏の「Perlメモ」にある
ものすごい正規表現のことかな。。。
0106名無しさん@お腹いっぱい。01/10/12 02:04ID:???
>>104
$data =~ s/($http_URL_regex)/&convurl($1)/ge;
sub convurl {
my($url) = shift;
my($str) = qq{<a href="$url">};
$url =~ s|(?<!/)/(?!/)|<wbr>/|g;
$str .= qq{$url</a>};
}

こんなんしか思いつかんダサ
010710401/10/12 09:48ID:???
>>105
bingo...
http://www.din.or.jp/~ohzaki/perl.htm#httpURL
にあるやつです。

>>106
うまくいった!ありがとう!
0108名無しさん@お腹いっぱい。01/10/12 12:46ID:???
<a href="http://www.test.com/dir/index.html>;http://www.test.com<;wbr>/dir<wbr>/index.html</a>
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
リンク張るならここまでだろ。2chださい。
0109名無しさん@お腹いっぱい。01/10/12 13:13ID:???
ちょいテスト

quoteなし
<a href=http://hoge.com/hoge.html>;http://hoge.com<;wbr>/hoge.html</a>

quoteあり
<a href="http://hoge.com/hoge.html">http://hoge.com<;wbr>/hoge.html</a>

quote閉じ忘れ
<a href="http://hoge.com/hoge.html>;http://hoge.com<;wbr>/hoge.html</a>
011010901/10/12 13:15ID:???
>>108 禿しく同意!
0111 01/10/15 01:18ID:???
0112名無しさん@お腹いっぱい。01/10/15 01:29ID:???
>>108,109=馬鹿
0113名無しさん@お腹いっぱい。01/10/15 06:28ID:???
>>112
その心は「クォート閉じ忘れやクォートなしは不正なのに、
それに対応していない2chを批判するのは馬鹿」という理解でよいですか。
0114名無しさん@お腹いっぱい。01/10/15 08:08ID:???
不正じゃなくても間違えますが何か?
<a href="http://example.com/">http://example.com/<;/a>
ということでお題。
&は含むけど&lt;や&gt;は含まないように
リンクを張る正規表現は?
0115名無しさん@お腹いっぱい。01/10/15 08:11ID:???
ちなみに現行はこう。
$message =~ s/(https?|ftp|gopher|telnet|whois|news)\:([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<a href=\"$1\:$2\" target=\"_blank\">$1\:$2<\/a>/ig;
011611301/10/15 09:07ID:???
>>114
いや、そういう意味で言ってるんだとしたら間違ってるよ。
っていいたかったの。

> &は含むけど<や>は含まないように
> リンクを張る正規表現は?
URLという意味では<が含まれてても問題(よね?)と思うので、
&lt;や&gt;をはじく必要は無いと思うけど・・・
ちょっと考えるよ。
0117名無しさん@お腹いっぱい。01/10/15 09:12ID:???
すんません。
$116 =~ s/(問題)/$1無い/;
$116 =~ s/</&lt;/g;
$116 =~ s/>/&gt;/g;
0118名無しさん@お腹いっぱい。01/10/15 10:07ID:???
>>116-117
問題あるよ。
http://www.isi.edu/in-notes/rfc2396.txt
0119名無しさん@お腹いっぱい。01/10/15 10:08ID:???
つーか正しく伝わってないかも。
< や > が含まれてると問題あるけど、htmlソース上は
&lt; や &gt; だから含まれてしまうのを
修正したいってことなんだけど。
012011301/10/15 10:18ID:???
s/</&lt;/g; s/>/&gt;/g してから
リンク張ってるのがまずいんですね。
リンク張りつつ < > 除去すれば正確になるのかな。

s{
  ((?:https?|ftp|gopher|telnet|whois|news)://[-_.!~*'()a-zA-Z0-9;/?:\@&=+\$,%]+)
  | (<) | (>)
}{
  $1 ? "<a href=\"$1\">$1</a>" :
  $2 ? '&lt;' :
  $3 ? '&gt;' :
  ''
}xeg;
とかはどうですか?
012111301/10/15 10:37ID:???
単純に &lt;、&gt; を避けるならこんな感じっすかね?
s{(
    (?:https?|ftp|gopher|telnet|whois|news)://
    (?:[-_.!~*'()a-zA-Z0-9;/?:\@=+\$,%] | &(?![lg]t;) )+
)}
{<a href=\"$1\">$1</a>}xg;
0122名無しさん@お腹いっぱい。01/10/15 11:23ID:???
news: の場合も // で始まるんでしたっけ?
s{(
(?:(?:https?|ftp|gopher|telnet|whois)://|news:)
(?:[-_.!~*'()a-zA-Z0-9;/?:\@=+\$,%] | &(?![lg]t;) )+
)}
{<a href=\"$1\">$1</a>}xg;
0123名無しさん@お腹いっぱい。01/10/15 11:35ID:???
URI referenceの場合にもリンクを貼りたいから
s{(
(?:(?:https?|ftp|gopher|telnet|whois)://|news:)
(?:[-_.!~*'()a-zA-Z0-9;/?:\@=+\$,%#] | &(?![lg]t;) )+
)}
{<a href=\"$1\">$1</a>}xg;
0124名無しさん@お腹いっぱい。01/10/15 11:51ID:???
一般的なCGIなら http と ftp 以外にリンク貼る必要も無いだろうから、
これで十分かな?
s{((?:https?|ftp)://(?:[-\w.!~*'();/?:\@=+\$,%#]|&(?![lg]t;))+)}{<a href="$1">$1</a>}g;
どっちにしても中途半端だけど。
0125名無しさん@お腹いっぱい。01/10/15 12:21ID:???
oとtarget=_blankを付けてみる。
s{((?:https?|ftp)://(?:[-\w.!~*'();/?:\@=+\$,%#]|&(?![lg]t;))+)}{<a href="$1" target=_blank>$1</a>}go;
0126名無しさん@お腹いっぱい。01/10/15 12:57ID:???
o修飾子はパターンに変数が入っていないときは影響なしとおもう。
ちがうの?
0127名無しさん@お腹いっぱい。01/10/15 13:01ID:???
そうかも。
0128名無しさん@お腹いっぱい。01/10/19 22:45ID:SauUPYVx
正規表現の火を消すな。
0129名無しさん@お腹いっぱい。01/10/20 00:13ID:???
意味ワカンネーよ  (藁
#詳説買って来たけどかなり本棚の肥やしになりそうな感じ・・・
0130名無しさん@お腹いっぱい。01/10/20 08:13ID:???
&&&
0131名無しさん@お腹いっぱい。01/10/20 16:58ID:rS0gfeFk
正規表現って、オミトロンで使ってるマッチングルールと同じ?
0132名無しさん@お腹いっぱい。01/10/20 22:31ID:???
それはちょっとおかしい。
良く突っ込まれる例:
あめぞうって、2chとかMAGABBSと同じタイプ?
0133名無しさん@お腹いっぱい。01/10/25 02:00ID:GZ9i4shV
テスト

http://www.2ch.
net/
<a href="http://www.2ch.net/">http://www.2ch.net/<;/a>
0134名無しさん@お腹いっぱい。 01/10/25 02:24ID:???
http://www.2ch.net/<;/a>
0135名無しさん@お腹いっぱい。01/10/25 17:47ID:???
>http://www.2ch.net/a<;/a>
0136名無しさん@お腹いっぱい。01/10/25 17:56ID:???
http://www.2ch.net/----This site is a Japanese famouse WEB site.
0137名無しさん@お腹いっぱい。01/10/26 09:05ID:+A/kF3WN
何をやりたいんだ
0138名無しさん@お腹いっぱい。01/10/26 11:48ID:???
</a>までリンクされる現象が直ってるかどうかのテスト、でしょ。
read.cgiでは直ってるみたいね。
0139名無しさん@お腹いっぱい。01/10/26 11:54ID:???
http://www.google.co.jp/search?q=%83S%83%8B%83A&hl=ja&lr=
0140名無しさん@お腹いっぱい。01/10/27 00:02ID:7lO0RLH0
道場は閉鎖されたようです。
0141名無しさん@お腹いっぱい。01/10/28 01:33ID:???
移転あげ
0142名無しさん@お腹いっぱい。 01/11/08 04:45ID:???
あげっ!!
詳説難しいって言う意見が有るけど(確かに ^-^; )
俺は最初詳説買ってチンプンカンプンだったんで、ゆたか氏の正規表現入門を
買ったよ、それから詳説読んだら理解がすすみやすかった
0143名無しさん@お腹いっぱい。01/11/17 19:17ID:BIcYTt7w
[0-9a-z]++で、8文字までっていうのはどうやるんでしょう?
0144吉野家シリーズでいってみよう!01/11/17 22:44ID:Sr4+rAbn
そんな事よりちょいと聞いてくれよ。
先日、正規表現のエンジン書いたんです。NFA.
そしたら単語境界の処理とかどうとか聞いてくるんです。
もうね、アホかと。馬鹿かと。
お前な、正規表現で表せねー機能拡張するんじゃねーよ、ボケが。
機能拡張だよ、機能拡張。
なんか文字クラスかあるし。
よーしパパ繰り返し回数指定サポートだー、とか言ってるの。
ここでぶち切れたね。
正規表現はな、状態数有限、男同士でケツを挿すか挿されるか
そこがいーんじゃねーか、状態数爆発させる奴はすっこんでろ。
あのな、E{8}で8回繰り返すなんてきょうび流行んねーんだよ。ボケが。
得意げな顔して何がPerlの拡張正規表現だ。
お前は本当に前処理展開が必要なのかと問い詰めたい。
小一時間問い詰めたい。
0145sage01/11/17 22:57ID:???
>144
端折らないでちゃんとやってよ〜。
0146名無しさん@お腹いっぱい。01/11/18 00:31ID:???
>>143
[0-9a-z]{1,8}
014714301/11/18 02:39ID:???
ありがうとざいました
0148名無しさん@お腹いっぱい。01/11/18 02:44ID:???
マジでこれだけだったのか・・・
何かネタかと思ったが
0149名無しさん@お腹いっぱい。01/11/18 03:00ID:???
>>148 何が?
0150名無しさん@お腹いっぱい。01/11/18 04:31ID:???
何がって(゜∀゜)! ヒャヒャヒャ
BBSに削除機能付けるから仕方なくって所だな。。。
0151ひ‎ろゆき@管‎直人01/11/18 04:41ID:???
ワケワカラン
0152名無しさん@お腹いっぱい。01/11/18 13:41ID:???
>147
「バオー来訪者」に出てきた九官鳥のほうが正しくお礼を言えてるぞ。
0153名無しさん@お腹いっぱい。01/11/18 17:44ID:???
>>152
オモロイ
0154名無しさん@お腹いっぱい。01/12/12 17:13ID:???
"c:\Program Files\hoge.exe" "c:\Program Files\hankaku.mp3" "c:\Program Files\全角.mp3"

c:\Program Files\hoge.exe
c:\Program Files\hankaku.mp3
c:\Program Files\全角.mp3
を抽出する方法キボンヌ

m/"\S.*?\S"/g
だと
"c:\Program Files\hoge.exe"
にヒットします.
"なしでヒットする方法キボンヌ(後方参照を使わずに)
0155名無しさん@お腹いっぱい。01/12/12 17:22ID:9gYD63hd
$hoge =~ s/あめぞう/だめぞう/g;
0156名無しさん@お腹いっぱい。01/12/12 18:22ID:???
/\w:[^"]+/g でどう?
0157名無しさん@お腹いっぱい。01/12/12 18:35ID:???
スンバらしい!!
目がうろこ

じゃあ
"hoge\\asdf\"hage"
から
hoge\\asdf\"hage
を抜き出す方法って無い?
0158名無しさん@お腹いっぱい。01/12/12 18:38ID:???
>>157
そういうファイルがあるってこと?
ファイル名に使えない文字だよ?>"
■ このスレッドは過去ログ倉庫に格納されています