- 1 名前:デフォルトの名無しさん [2007/08/02(木) 13:53:20 ]
- 正規表現(Regular Expression)スレです。
質問する場合は実装言語や処理系ソフトウェア名を示しておくと話が早いです。
- 454 名前:デフォルトの名無しさん [2008/02/19(火) 18:37:56 ]
- サンマの缶詰が安かったから、これで炊き込みごはん。
米1合を洗ってダイソーで買った105円の土鍋に入れる。 そのままサンマの缶詰1缶まるごとブチ込む。 水加減は、缶詰の水分と合わせて200mlくらいになるように調節。 30分くらい浸して火にかける。 最初は中火より強め。5分くらいで吹いてくるから弱火にして、さらに5分。 (赤子泣いてもフタ取るんじゃないぞ) 炊き上がったら5分むらす。 缶詰はサンマでなくても、鯖とかイカとか赤貝とか、好みのでOK。 味が濃い目の缶詰がいいな。味が薄いときは醤油や砂糖やみりんを加えてから 炊くといいよ。
- 455 名前:447 [2008/02/19(火) 18:40:47 ]
- エディタはJedit X1.11です
例) あああ〜〜〜1234567 いいい〜〜〜1234567 ……… ……… 〜〜〜は文字数などもバラバラな任意な文字列(全角含む) 行頭『あああ』で始まる行の、行末『1234567』を 別の文字列『abcd』等に置換したいのです
- 456 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 18:43:41 ]
- あああ腹へったなー
- 457 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 20:02:10 ]
- (?<=あああ).*(?=.{7}) -> abcd
- 458 名前:447 [2008/02/19(火) 21:51:39 ]
- >>452
おいおい気がついたらとんでもない事勝手に書いてるな〜(苦笑 >>457 ありがとうございます 戻り読みと先読みですか、なるほど! ですが、これだと『〜〜〜』の部分になってしまいますよね……
- 459 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:38:16 ]
- 1合炊きの土鍋なんてあるのか
今度ダイソーに行ったら見てみよう
- 460 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:44:48 ]
- >>459
中国製の土鍋なんてどんな毒が混ざってるか分からんぞ。
- 461 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 00:38:19 ]
- ニ○リの土鍋以外にでたっけ
- 462 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 08:47:18 ]
- >>452
こういうことすぐ言う人って、昔いじめられてた人なんでしょ?可哀想にね
- 463 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 11:24:13 ]
- めんどくさがりなので俺なら↓でやってしまうな
/^(あああ.*?)(.{7})$/\1abcd/
- 464 名前:447 [2008/02/21(木) 18:24:17 ]
- >>463
ありがとうございます いろいろ調べながらやってますがダメなようです もうちょっとがんばってみます
- 465 名前:デフォルトの名無しさん [2008/02/21(木) 18:30:35 ]
- せっかくヒントもらえたんだし、頑張ってもらわんとな
- 466 名前:デフォルトの名無しさん [2008/02/22(金) 00:06:24 ]
- >>396
いまラッパーつくってるよ ちょっとまてて
- 467 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 13:22:33 ]
- 2008-03 発売(予定)
「詳説 正規表現 第3版」 (Jeffrey E.F. Friedl 著 / 長尾高弘 訳) ISBN 978-4-87311-359-3 定価 5,040円
- 468 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 16:48:39 ]
- おや、和訳出るのね。今回は田和さんじゃないんだ
もったいない気もするがロングテールの人なら鉄板か
- 469 名前:466 [2008/02/22(金) 21:49:08 ]
- できましたよ 使ってみてください サポートはここで
fx10.web.fc2.com/index.html
- 470 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 03:35:41 ]
- >>468
原書では追加はPHP関連とかがあったけど、以前のものからの改訂部分って ほとんどなかったんだよね。 訳しなおしてるのかなあ?
- 471 名前:デフォルトの名無しさん [2008/02/23(土) 20:12:38 ]
- php4なのですが、
<img src="new.gif" alt="New" width="10"> を正規表現で置換してaltの値だけを表示にすることは出来ませんでしょうか よろしくお願いします
- 472 名前:デフォルトの名無しさん [2008/02/23(土) 20:21:04 ]
- <img src=\".*?\" alt=\"(.*?)\".*?>
\1 でできたよ
- 473 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 20:28:49 ]
- 秀丸で検索するときに文字列Aを含んで且つ文字列Bを含まない行全体を指定したいのですが、
(含む行) ^.*文字列A.*\n (含まれない行) ^((?!文字列B).)*\n で個別にはわかるんですがこの2つを合わせてて検索したいのですがどう書けばいいのでしょうか?
- 474 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 23:21:55 ]
- (^.*文字列A.*\n|^((?!文字列B).)*\n)
- 475 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 23:22:43 ]
- あ、間違えたわ
- 476 名前:デフォルトの名無しさん [2008/03/06(木) 01:07:25 ]
- dll
| ^ dll
- 477 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 08:06:30 ]
- 微妙にイケメソがいるな
- 478 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 08:12:32 ]
- ☞
- 479 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 08:35:28 ]
- (6
’) (6
- 480 名前:デフォルトの名無しさん [2008/03/07(金) 17:01:30 ]
- 質問です。
小数点以下の右端の0を全部取り除きたいです。 小数点以下が0しかない場合は、小数点も含めて取り除きたいです。 3.00 → 3 3.02000 → 0.02 どう書けばよいでしょうか? sprintf("%g", num) とすればいけるかと思いましたが、numが19120730.0000の場合に 1.91207e+07となり、使えませんでした。 perl5.8です。宜しくお願いします。
- 481 名前:デフォルトの名無しさん [2008/03/07(金) 17:04:54 ]
- ____
// ̄ ̄`| /|断 だ | / |る が | /イ \___| / |// /| | /_\ /_/_レ| ∧o>/ イ≡三\| /ミ// r-<彡/| / /彡 ヾ\_O> | /iハ-イ)  ̄ヽ彡| `/ i∧二 // | / (`ーv\ // /| `<j`ーヾ_ゝ // (r| `< ノ /リ| `< //7| `</ / | `<|
- 482 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 18:16:02 ]
- 正規表現関係ないな。脳みそつかえ
- 483 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 20:32:03 ]
- >>480
s/\.?0+$//
- 484 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 10:40:12 ]
- 約2万件のデータがあるのですが
使用する文字が半角全角交じりで途中に記号やスペースもあるかもなのです 文字数もわかりません 2つのキーワードで全部取れますか? キーワード@東京都 キーワードA3-5-7 何区何町だったか思い出せません>< 何故か357って数字だけ覚えてました^^
- 485 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 10:59:33 ]
- 東-京/都
とかなってたら終わりだな
- 486 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 11:44:11 ]
- 東京都 市ってなかったっけ?w
- 487 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 12:23:42 ]
- 東京都.*?[33三].+?[55五].+?[99九]
で抽出してあとは手動かなぁ、俺がやるなら 漢数字が入る地名とかいちいちはじいてられないし
- 488 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 14:42:33 ]
- <object> ←これ検索したいんですお願いします
- 489 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 17:32:38 ]
- /<object>/
- 490 名前:デフォルトの名無しさん [2008/03/09(日) 01:17:00 ]
- >>1
みたいにアンカー機能を付けたいのですがどのように書けば良いのでしょうか?
- 491 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 10:41:21 ]
- >>490
>>1 を見てその質問の仕方なのかよ!?
- 492 名前:デフォルトの名無しさん [2008/03/10(月) 21:13:30 ]
- <hoge aaa="aa\"bb<cc>dd" zzz="ee\"ff<gg>hh">value</hoge>
↓ value と置換する正規表現を教えて下さい 言語は JavaScript で、戻り読みは使えません
- 493 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 21:23:42 ]
- 正規表現よく分かりません><
<[^/]+>([^<]+)</.+>
- 494 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 02:03:14 ]
- 入門 正規表現
サンプルがJavaで吹いた
- 495 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 06:12:35 ]
- >492
ブラウザのJavaScriptならXPathのほうが速くて正確
- 496 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 06:39:06 ]
- >>495
ブラウザじゃないです 取得したページからタグを削除することを目的としています
- 497 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 06:41:25 ]
- >>495
493の正規表現でいいんじゃね?
- 498 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 08:57:13 ]
- 秀丸ではスペースは直打ちがデフォですか?
何か気持ち悪い。
- 499 名前:デフォルトの名無しさん [2008/03/12(水) 01:26:27 ]
- Perlの正規表現で[^\.-z]っていうのがあったんですけどこれってどういう文字が当てはまるんですか?
- 500 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 01:36:32 ]
- >>499
ASCIIのコード表でも見てみればいいんじゃないかな
- 501 名前:デフォルトの名無しさん [2008/03/12(水) 06:02:36 ]
- >>500
見てみたけどピリオドのほうがzより後に来てるのでこれおかしいんじゃないのと思って質問したのですが・・・
- 502 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 06:04:10 ]
- どこの表にそんなでたらめが書いてあるんだよ
- 503 名前:499 [2008/03/12(水) 06:07:45 ]
- あ、あれ・・・
もう一回調べてみたらピリオドのほうが先に来てる・・・
- 504 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 22:09:17 ]
- >>503
あー、すまん、書き間違えてたので修正しといた。
- 505 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 22:16:00 ]
- ってのは冗談として、
そういう ASCII コード表の順に大きく依存するような範囲指定を書くのは良くないと思う。 バグってハマったときに ASCII コードを凝視しないと解決いけなくなるし、移植性も低くなる。 アルファベットと記号は分けて書くようにするとか、文字クラスなどを利用した方が良い。
- 506 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 23:26:03 ]
- >>505
言うことは非常によくわかる。 文字クラスを使うべきっていうのには完全に同意。 でもASCIIコード順は移植性十分にある気がする。 とりあえず俺はASCIIコードで範囲指定するのは問題ないと思う。
- 507 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 23:49:22 ]
- 個人的には
OSの事情とかLOCALEまわりのランタイムの完成度とか POSIX文字クラスは警戒心をくすぐるものだw
- 508 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 02:07:43 ]
- こんばんは!
はじめましてよろしくです^^ キーワード@とキーワードAを同時にグレッペ出来る機能のあるツールはありますか 1000ファイル単位で処理したいんですが 1ファイルに@AA(Aは同じものが連続である) これを行ごとgrepしたいんです Aについては1つ削除がいいです よろしくお願い致します キーワード@東京都 キーワードA性別A(性別マーク)
- 509 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 02:25:18 ]
- 日本語でおk
- 510 名前:デフォルトの名無しさん [2008/03/13(木) 03:23:27 ]
- 3回読んだが意味わからん
- 511 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 03:30:34 ]
- なんとなくわかった気がしたけど最後の1行でぶちこわされた
- 512 名前:デフォルトの名無しさん [2008/03/13(木) 07:22:30 ]
- グレッペ
- 513 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 07:40:30 ]
- こんばんは迄呼んだ。
- 514 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 08:09:40 ]
- グレッペのあたりで断念した
- 515 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 09:04:25 ]
- デフォルトのまで読んだ
- 516 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 09:11:02 ]
- 1ファイルに3つのキーワードが先頭から
都道府県名 性別 性別を表す何らかのマーク の順番で並んでいて、 2つめと3つめは同じ性別を意味する別表現である。 例えば2つめが「男」だったら、3つめは「♂」となる。 これをgrepしたいが、性別については一つ消したい。 こんな感じか? grepだけじゃ無理だからsedかawk使え、でおk?
- 517 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 09:48:33 ]
- わろた
- 518 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 12:54:59 ]
- 縦読みだろJK
こはキ11こAよキ ここで、前半部分の"こはキ11こ"というのは、 個数は11個じゃないよ、というのを表している。 個は、!=11個、というわけだな。 後半部分の"Aよキ"というのは、 2個でもねーよ、というのを表している。 (2個 !=)という逆ポーランド記法を使っているようだ。 つまり、個数は11個でも2個でもないということだったんだよ!!! Ω ΩΩ<な、なんだってー!!!
- 519 名前:デフォルトの名無しさん [2008/03/13(木) 16:15:05 ]
- Perlで>>1のようにアンカー機能をつけるためには正規表現を学べばいいと聞きました
if ($FORM{'text'} =~/>>$d/) こんな感じでアンカーを抜き出すのは合ってるのでしょうか? そのあと$DATA[$d]てきなのを取り出すにはどうしたらいいのでしょうか?
- 520 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 16:26:58 ]
- >>519
ハェ?誰に聞いたんだ?言った奴に質問してこい
- 521 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 20:34:26 ]
- $FORM{'text'} =~ s/>>(\d{1,4})/<a href='#$1'>>>$1<\/a>/ixms
思いついたやつを貼ってみる こんなんだっけ?perlうろ覚えだわ
- 522 名前:デフォルトの名無しさん [2008/03/13(木) 21:25:39 ]
- >>521
うまくリンクされません。。 $FORM{'text'} =~ s/>>(\d{1,4})/<a href='#$1'>>>$1<\/a>/ixms ↑これは桁数が1〜4ならマッチということですよね リンクされないのはなぜでしょうか?
- 523 名前:デフォルトの名無しさん [2008/03/13(木) 21:30:52 ]
- すいません
自己解決しました $val =~ s/</</g; $val =~ s/>/>/g; これでタグを無効にしていました それで>>521さんの通りにやるとアンカー自体はマッチします この後それを取り出すのはどのようにすればいいのでしょうか? ログからデータを取得するのはわかりますが、実際にその取り出された部分だけを抽出して表示するやり方がいまいちわかりません
- 524 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 21:35:50 ]
- webprog池
- 525 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 21:58:16 ]
- >>508
やったな、おい!大漁じゃねーか!
- 526 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 07:20:33 ]
- なんだい今更になって
本人乙とでも言ってほしいのか?
- 527 名前:デフォルトの名無しさん [2008/03/14(金) 18:46:06 ]
- >>523
- 528 名前:デフォルトの名無しさん mailto:age [2008/03/14(金) 21:06:23 ]
- 「楽しいかもね、そうかもね」っていう文字列で
「楽.*ね」ってやると、.*は可能な限りマッチするから 「楽しいかもね、そうかもね」まで拾っちゃうでしょ? それを「楽しいかもね」でマッチさせたい場合どうすればいいですか?
- 529 名前:デフォルトの名無しさん [2008/03/14(金) 21:08:42 ]
- *?って?をつければ非欲張り型(なるべく短くマッチ)になるかも知れない
- 530 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 21:08:49 ]
- >>528
まずは>>1を音読したまえ
- 531 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 21:09:35 ]
- 楽.*?ね
- 532 名前:デフォルトの名無しさん mailto:age [2008/03/14(金) 21:12:11 ]
- .*? でした。
- 533 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 00:19:58 ]
- 60文字程のURLなんだけど
真ん中あたりの15文字くらいがわかんなくなりました 正規表現でなんとかなりませんか?
- 534 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 00:27:42 ]
- その15文字の前か後ろの長いほうで検索すればいいだろ…
- 535 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 10:57:56 ]
- >>528
楽[^、]*ね
- 536 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 11:05:59 ]
- >>535
それが許されるなら 楽しいね だって許されるはずだ
- 537 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 11:47:45 ]
- 楽しい、ね
- 538 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 11:48:14 ]
- 楽しいかもね楽かもね
- 539 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 14:28:52 ]
- >>535
だったら 楽[^ね]*ね でもいい様な。
- 540 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:53:11 ]
- ワード協会とか除外すればいいのどは
- 541 名前:デフォルトの名無しさん [2008/03/15(土) 22:03:46 ]
- 安楽死ね
- 542 名前:デフォルトの名無しさん mailto:age [2008/03/16(日) 00:57:08 ]
- 「楽しいかもね、そうかもねABC」っていう文字列で
「ね.*$」ってやると 「ね、そうかもねABC」まで拾っちゃうでしょ? それを最後の「ねABC」でマッチさせたい場合どうすればいいですか?
- 543 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 00:59:00 ]
- ね.*?$ だと何度言えば
- 544 名前:デフォルトの名無しさん mailto:age [2008/03/16(日) 01:02:19 ]
- >>543
マジで?できないけど??
- 545 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 01:04:58 ]
- [^ね]を使うとか、いろいろやりようはある
- 546 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 01:08:49 ]
- >>544
最短一致に対応してないタイプの正規表現なのかな。
- 547 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 01:16:55 ]
- >>543,546
その目的には、最短一致は使えないから。 照合開始位置を後ろにずらしてまで最短を見つけるわけではない。
- 548 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 01:21:20 ]
- ああ、そうなんだ。
- 549 名前:デフォルトの名無しさん mailto:age [2008/03/16(日) 01:34:22 ]
- さあ、この問題を解決できる神はいるのだろうかっ!!(ただ答えが欲しいだけ)
- 550 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 01:35:49 ]
- ね[^ね]*$ じゃないのか?
- 551 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 01:50:55 ]
- それもう545で提案されてんじゃん。
- 552 名前:デフォルトの名無しさん mailto:age [2008/03/16(日) 02:24:31 ]
- >>550
THX!ひとまずそれで省いた後 ね$をマッチさせることにするよ
- 553 名前:492 mailto:sage [2008/03/16(日) 03:14:37 ]
- やはり戻り読みが使えないと難しいですか?
- 554 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 03:24:12 ]
- 戻り読みはいらんだろ
|

|