[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 02/03 08:16 / Filesize : 179 KB / Number-of Response : 834
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

正規表現



1 名前:正規表現 mailto:正規表現 [02/12/06 18:09]
正規表現

477 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/11 11:11:46]
最短マッチに対応した grep ってある?

478 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/11 13:31:51]
>>477
grep が最短マッチに対応してるかどうかが問題になるケースってある?

479 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/30 22:46:31 ]
[^ま]*まってかくのめんどくさい

480 名前:名無しさん@お腹いっぱい。 [05/02/26 05:47:57 ]
あげ

481 名前:名無しさん@お腹いっぱい。 [2005/03/30(水) 02:33:49 ]
up

482 名前:名無しさん@お腹いっぱい。 mailto:ほしゅsage [2005/04/19(火) 17:08:07 ]
正規表現の実装っていろいろあることにやっと気づいた漏れorz

483 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/14(土) 15:12:25 ]
ほしゅ

484 名前:名無しさん@お腹いっぱい。 [2005/05/16(月) 16:51:45 ]
abc xyzをaxbyczにしたいのですが

485 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/16(月) 17:05:02 ]
s/abc xyz/axbycz/g



486 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/16(月) 19:33:57 ]
ワロタ


487 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/16(月) 19:34:25 ]
保守

488 名前:名無しさん@お腹いっぱい。 [2005/05/17(火) 22:45:20 ]
>>484
echo abc xyz |sed -e "s/^/%/; :ll; s/[%]\(.\)\(.*\) \(.\)\(.*\)/\1\3%\2 \4/; tll; s/%//;"

489 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/18(水) 00:13:40 ]
うひょー

490 名前:名無しさん@お腹いっぱい。 mailto:ほしゅsage [2005/05/28(土) 03:19:18 ]
うに厨として、% をめぐる動きに溜息出た…真剣にありがと 何重にも目が覚めた

491 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/28(土) 05:32:41 ]
abc xyz でも
abcdefg ABCDEFG でもできるね。すげーや。

492 名前: ◆2fmGY.thDg mailto:sage [2005/06/02(木) 22:17:25 ]
a

493 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/06/04(土) 23:07:23 ]
('A`)

494 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/06/19(日) 02:53:08 ]
Onigurumaを使っているんですが、
あるテキストデータがあります。
----- ここから
END

注釈 ○○○
注意 △△△
補足 ◎◎◎

TITLE
----- ここまで
という部分の、ENDの後の空白行からTITLEの前の空白行の部分(間の行)を削除して、
ENDとTITLEの間は1行だけの空白行にしたいです。
「END\s^[0-9a-zA-Z。-゜ぁ-んァ-ヶ亜-?]*\sTITLE」を指定してもマッチしないんですが、
これは私の正規表現の式が間違えているんでしょうか?
(複数行を1度に選択する方法を間違えている???)

495 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/06/19(日) 03:13:31 ]
>>494
つーか、正規表現だけ見せられても判断できないと思うんだけど。
改行処理や文字コードのオプション設定はどうしてるかとかいろいろ情報が足りない。



496 名前:名無しさん@お腹いっぱい。 mailto:ほしゅsage [2005/07/13(水) 09:25:56 ]
素直に、
~s/END(\s*.*?\s*)TITLE/END\n\nTITLE/sg;
じゃダメ?

497 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/07/13(水) 13:15:24 ]
>>496
Oniguruma の質問なわけだが?

498 名前:名無しさん@お腹いっぱい。 mailto:ほしゅsage [2005/07/13(水) 17:54:26 ]
…とは思ったのだが、Perl 互換らしーから、いーかなとw

てか、見つかるのむちゃくちゃ早いなww
事後ながら、oniguruma (ライブラリ)取りに行った

499 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/07/13(水) 19:58:46 ]
>>498
> 見つかるのむちゃくちゃ早いなww
どういうこと?


500 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/07/17(日) 23:17:41 ]
>494
> 「END\s^[0-9a-zA-Z。-゜ぁ-んァ-ヶ亜-?]*\sTITLE」を指定してもマッチしないんですが、
> これは私の正規表現の式が間違えているんでしょうか?
> (複数行を1度に選択する方法を間違えている???)

これのどこが、複数行を一度に選択しているの?


501 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/07/19(火) 19:22:13 ]
>>500
ONIG_OPTION_MULTILINE (や REG_NEWLINE や RE_OPTION_MULTILINE など) をセット
しているかどうかで複数行選択できるかどうか変わるので、
そのへんを晒せばもうちょっと状況がわかると思うのだが、
元質問者はもう既にどっかいっちゃったのだろうな。

502 名前:名無しさん@お腹いっぱい。 [2005/09/21(水) 20:57:28 ]
正規表現で
○○ か ○○の場合と言うのはどう表現するのでしょうか?

Cで言う、 || のようなものです。

503 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/21(水) 21:07:45 ]
テンプレに何もないんだなこのスレ。
このあたりで調べろ

www.kt.rim.or.jp/%7Ekbk/regex/regex.html

504 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/21(水) 21:18:44 ]
\(>∀<\) キャー

505 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/21(水) 21:58:13 ]
(;`∇´))))))))))) \(>∀<\) キャー



506 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/21(水) 22:48:45 ]
俺ならこう→「\(○{2}\) か \1の場合」

507 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/21(水) 23:46:20 ]
何気に正規表現本もラッシュだな。


508 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/22(木) 00:19:11 ]
\([^ ]∀[^ ]*\)

AAみたいな正規表現を作りたいが難しい。

509 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/22(木) 02:52:41 ]
つくれてるやん!

510 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/23(金) 23:15:15 ]
∀ がメタキャラになってくれると楽しいかも


511 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/26(月) 20:32:51 ]
дも

512 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/28(水) 14:54:06 ]
ネタキャラ


513 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 01:04:17 ]
純粋に興味の問題なんだけど、
「ある文字集合の要素が各1回ずつしか出現しない」という文字列は
正規表現で表現できる?

例えばA, B, Cの文字からなる言語を考えたとすると、
ABC ACB BAC BCA CAB CBAの6つの文字列にマッチする表現っす。

514 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 01:08:23 ]
文字集合の濃度が有限なら
単に | でつなげばいいな。

515 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 02:30:43 ]
いろは歌とか"a quick brown fox..."みたいなのにマッチさせる正規表現、
って書けば説明が早かったかもですね。

>>514
ひらがなの場合で47!個、アルファベットの場合で26!個の文字列を
|でつなぐってことになると思うんですが、やはりこれしか方法ないんですかね。
正規表現の長さは… アルファベットの場合でも約1京テラバイトか… orz



516 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 09:42:38 ]
>>513
[^A]*A[^A]* ではどうよ

517 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 09:53:24 ]
>>516
BBA にもマッチしちゃうんでは。

518 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 09:57:44 ]
>>515
> "a quick brown fox..."みたいなのに
o 2回出てるよ。

実用を考えたら正規表現以外でやった方がいいな。

519 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 19:50:27 ]
いろは歌って内容も傑作だよな。

520 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/09(金) 21:53:37 ]
> o 2回出てるよ。

おお、32年生きてて初めて気が付いたっす。漏れの目はfusianasanさんだ… orz

> 実用を考えたら正規表現以外でやった方がいいな。

そうことになっちゃいますかね。みなさんレスどうもでした。

521 名前:名無しさん@お腹いっぱい。 [2005/12/11(日) 08:09:16 ]
Windowsで正規表現にマッチする文字列のみ(行全体じゃなく)を表示・保存するにはどうすればいいのでしょうか?
xyzzyとかのエディタのgrepでやろうとしたのですが、検索してもよくわかりません。
Rubyとかスクリプト言語を使わないと無理でしょうか?


522 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/11(日) 08:13:57 ]
上すいません。書きこむスレ間違えました。(プログラム板の正規表現スレに書きこんだつもりでした。)

523 名前:名無しさん@お腹いっぱい。 [2005/12/11(日) 11:19:25 ]
ちょうど一回出るんなら何かの順序でソートして文字列が完全一致することをチェックかなあ

524 名前:名無しさん@お腹いっぱい。 [2006/01/01(日) 11:16:33 ]
エディターの正規表現で置き換えをしたいんですが・・・
1、2、3、・・・という連番を
(1) (2) (3)というふうに置き換えたいのですが
どうしたらよいでしょうか。

525 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/01(日) 11:57:28 ]
まずは(ry



526 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/01(日) 12:39:56 ]
置換元:[1-9]
置換先:(\0)
で、できるかもよ。

527 名前:名無しさん@お腹いっぱい。 [2006/01/01(日) 17:30:57 ]
>>526
だめでした。


528 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/01(日) 19:50:58 ]
置換元:[1-9][0-9]*
置換先:\(\0\)
こんな風にすればできるのかな?
どんな風に駄目だったかわからないけれど。

529 名前:名無しさん@お腹いっぱい。 [2006/01/01(日) 20:02:16 ]
>>528
それもやってみましたが、検索はされるのですが、
置き換えが出来ません。(0)となってしまいます。
前回のは(となってしまいます。
エディターだから駄目なのでしょうか。


530 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/01(日) 20:09:51 ]
\0のところを、
\1
$1
にしても同じかな?

531 名前:名無しさん@お腹いっぱい。 [2006/01/01(日) 20:13:18 ]
>>530
($1)となってしまいます。


532 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/01(日) 20:17:25 ]
そのエディタの正規表現がreference(\1とか$1とか)をサポートしてないに1票。

533 名前:名無しさん@お腹いっぱい。 [2006/01/01(日) 21:27:04 ]
!(^^)!ピンポーンです。
ヘルプを見ていたら、referenceはサポートしていないと出ていました。
他のエディターを探すか、どうしたらいいでしょうか。


534 名前:名無しさん@お腹いっぱい。 [2006/01/01(日) 23:17:07 ]
続きです
結局QXエディタをダウンロードして使いました。
びっくりしたのはWindows上では
正規表現というのは全然一般的ではないんですね。
勉強しようにも正規表現サポート自体が脆弱だったんですね。


535 名前: 【大凶】 3回目 mailto:sage [2006/01/01(日) 23:32:29 ]
ググればなんぼでも出てきます。少し自分で考えなはれ。



536 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/03(火) 22:49:27 ]
まあやることがハッキリ決まってるんなら、
(念の為)対象ファイルのカレントディレクトリのDOS窓を開いてsed、だな。

537 名前:名無しさん@お腹いっぱい。 [2006/01/07(土) 07:00:27 ]

{aaa}[bbb}{ccc}
という文字列から、aaa bbb cccをそれぞれマッチさせてとりだしたいので、

/¥{(.*)¥}¥{(.*)¥}¥{(.*)¥}/

としていましたが、
とりだしたい文字列のなかに、さらに{}がはいっていることがあることが
わかりました。
{aaa}[b{b}b}{ccc}
とか。
それぞれaaa b{b}b cccというかたちでとりだしたいのですが、どうしたものでしょうか。


538 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/07(土) 10:07:50 ]
>>537
sedはそのままでok

539 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/07(土) 14:56:41 ]
グループ化用のカッコにエスケープが必要だからsed「では」ダメじゃないの?
Perlならエスケープ不要なので大丈夫。

ところで>>537はテクニシャンだな。
navi2chで円マーク(¥じゃないほう)を表示させやがって…

540 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/07(土) 15:36:35 ]
>>539
ヒント:}{

541 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/07(土) 15:46:46 ]
いや、それは分かってるつもりだけど。
sedだと例えば{(aaa)}{(bbb)}{(ccc)}にマッチしちゃいますよってこと。

542 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/07(土) 17:31:15 ]
>>541
じゃあ不必要な{}()を最初にスペースに変換してからマッチさせたら

543 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/07(土) 18:58:38 ]
そんな必要ない。sedでも>>537のカッコをすべてエスケープすれば良い。
>>538の「sedは」というのが余分だっただけ。

544 名前:名無しさん@お腹いっぱい。 [2006/01/12(木) 05:55:00 ]
郵便番号をPHPで「1234567」から「123-4567」へ整形する正規表現を教えて下さい。

545 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/12(木) 11:06:51 ]
>>544
【PHP】質問スレッドpart32【php】
pc8.2ch.net/test/read.cgi/php/1136276300/



546 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 16:59:36 ]
すいません。
--------------------------------
#hogehoge
fugafuga 1
--------------------------------
という風に行頭が#じゃないというのを正規表現で取得したいのですが
「ではない」というのが分かりません。
bashを用いております。
以上 ご助力をお願いいたします。

547 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 20:50:59 ]
>>546
grep -v '^#'

548 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 21:08:39 ]
>>546
grep '^[^#]'


549 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 21:29:57 ]
いつも思うけど、
[^#] 形式だと文字が存在してないときも除外してしまうので
面倒なことあるよね。
ディレクトリリストから
.
..
を除外しようと
[^.][^.].*
を使って一文字のファイル見逃すとか。

550 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 21:47:30 ]
>>549
その方が便利なこともある。

551 名前:544 mailto:sage [2006/01/16(月) 17:54:29 ]
ご教授ありがとうございます。
本当に助かりましたっ

552 名前:名無しさん@お腹いっぱい。 [2006/01/22(日) 02:37:32 ]
正規表現の正規表現ってどうかきますか?
ある値が正規表現の構文に沿っているかどうかを調べたいとき。

553 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/22(日) 02:48:16 ]
入れ子があるから正規表現にはならない。
BNFを書けば3型文法に属さないこと分かるでしょ。

554 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 11:22:53 ]
いきなりすんません
2ちゃんねるブラウザ Jane Doe Style で正規表現検索を使おうとしたけど、書き方がいまいち分かりません。
F900i という文字列だけを検索して F900is や F900iT はヒットさせないようにするには、どう書けば良いですか
ぐぐってもいまいちわからないので。。。。

555 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 11:25:48 ]
板違い。



556 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 11:32:56 ]
スマンです。でもスレタイ検索してもほかに質問できそうな場所なかったんけどだめですか。

UNIX 085 正規表現 (553)
プログラム 408 正規表現part2 (102)
プログラマー 283 【Regular】正規表現【Expression】 (36)

557 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 11:36:10 ]
板違い。

558 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 11:49:12 ]


559 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 13:16:13 ]
>>554
Jane Doe Style とやらがどんな正規表現エンジンを使っているかにも
激しく依存する話なので、
まずはそのソフトのスレで聞いてみた方が良いと思う。

560 名前:名無しさん@お腹いっぱい。 [2006/04/15(土) 16:30:37 ]
(・∀・)

561 名前:名無しさん@お腹いっぱい。 [2006/04/18(火) 03:51:57 ]
onigruma... 気になる。名前が怖い。

562 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/04/18(火) 09:54:32 ]
nekoguruma だったら弱そうだしな

563 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/05/02(火) 22:56:16 ]
>>562
いろいろ運べそうじゃないか

564 名前:名無しさん@お腹いっぱい。 [2006/05/29(月) 20:29:06 ]
正規表現厨には
grep --color


565 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/05/31(水) 19:33:06 ]
勉強ついでに554を考えてみた。精度に難がありそうですが、以下でどうだろう?

[^A-Zz-z0-9]*F900i[^A-Za-z0-9]*




566 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/06/16(金) 03:35:29 ]
>>565
最低限試そう。"F900iS"=~/[^A-Zz-z0-9]*F900i[^A-Za-z0-9]*/ はマッチする。
ヒント: \W \b 否定先読み

567 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/07/25(火) 12:40:49 ]
...
Doll ←ここから
\=\-\--\-``--`\=`-==\
\=-\=-\``\==`=`--`-=-

Egg
-=-\-=-\-\=-=--\=-=-=\
-=-\-=-=\=-=\=-=-\-=\- ←ここまで

Fruits
...

のときDoll〜Eggの項目まで抽出するにはどうしたらいいですか?
/Doll/,/Fruits/ でおおまかには抽出できるけどもっと正確に抽出したいのです

568 名前:名無しさん@お腹いっぱい。 [2006/08/09(水) 21:11:53 ]
『詳説 正規表現 第3版』 が今月発売されるね。
邦訳版の出版は知らんけど。

569 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/10(木) 13:32:24 ]
情報サンクス。
けど、洋書なら原書のタイトル表記でよろしく。
早とちりして必死で oreilly.co.jp と amazon.co.jp 探しちゃったよー。(←あほ)

570 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/10(木) 21:53:00 ]
>>569
www.oreilly.com/catalog/regex3/index.html

わざわざ、邦訳版の出版は知らんって書いたのになw

571 名前:名無しさん@お腹いっぱい。 [2006/08/18(金) 16:48:08 ]
oraclesqlpuzzle.hp.infoseek.co.jp/regex/index.html
正規表現の問題集らしい

572 名前:名無しさん@お腹いっぱい。 [2006/08/18(金) 17:01:57 ]
>>568
作者宣伝乙、
というのは冗談で、情報ありがと。
日本語版はいつ出るんだろ。

573 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/08/23(水) 13:58:51 ]
立ち読みとか読んだうちに入らんと思われた。

574 名前:名無しさん@お腹いっぱい。 [2006/08/23(水) 17:31:35 ]
>>177
oraclesqlpuzzle.hp.infoseek.co.jp/regex/regex-4-10.html
こんなのもあるみたいやね

575 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/05(木) 15:46:12 ]
age



576 名前:名無しさん@お腹いっぱい。 [2006/10/16(月) 10:51:27 ]
ageとくか

577 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/10/17(火) 01:00:23 ]
質問させてください。

正規表現を用いたgrepをするときに、
文字列"foo"を含まない全ての行にマッチさせるためには
どのように書けばよいのでしょうか。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<179KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef