- 1 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 22:07:28 ]
- 正規表現(Regular Expression)スレです。
質問する場合は実装言語や処理系ソフトウェア名を示しておくと話が早いです。 前スレ 正規表現 Part4 pc11.2ch.net/test/read.cgi/tech/1186030400/
- 652 名前:デフォルトの名無しさん [2009/02/03(火) 17:05:09 ]
- Perlの質問です。
.......<code>.......</code>...... ....<code>...........</code>...... こんな感じのドキュメントを、<code>または</code>の前で区切ってsplitで分けようとして 書きましたがうまくいきません。何が悪いのでしょうか。 @content = split( /(?=<(|\/)code>)/, $content);
- 653 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 17:17:00 ]
- >>652
たぶん空文字列や'/'が混じるのが御気に召さないのだろうと 思うがそれは君が (|\/) でキャプチャーしているからだよ。 いらなければ (?:|\/) とか \/? とかにするといい。
- 654 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 17:26:39 ]
- >>653
迅速かつ的確なアドバイス、ありがとうございます。上手くいきました。 意味はこれから勉強していきます。
- 655 名前:デフォルトの名無しさん [2009/02/04(水) 19:03:45 ]
- お願いします( ゚ω゚ ) 言語はC#を用いています。
正規表現にて [ok] 100 [ng] 01 → 1 [ok] 0.001 [ng] 00 → 0 [ok] 0.1000 前ゼロ入力をReplaceで""に置き換えたいのですが、正規表現が上手く書けませぬ 教えてくださいエロい人
- 656 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 19:29:16 ]
- 関口宏「ベジータさん、今までいろいろな敵と戦ってきましたね?」
ベジータ「ふん、ゴミに興味などない」 関口、リーダー『ゴミに興味などない』 ベジータ「な……なんだ貴様ら!?」 リーダー「そんなベジータさんにはこんな問題!」 関口宏「ベジータさんが戦った、ギニュー特選隊のメンバー、五人全員お答え下さいスタート!」 リーダー「走って!まだよまだよまだよどうぞ!」 ベジータ「ギニュー! グルド! えー……バータ! ……待てよ、ギニュー、グルド、バー……くそ、わからん! あっ、ザーボン! なにっ!? ドドリア! くそったれ! ギニュー! グル」 ブッブー! ベジータ「はぁ……はぁ……」 関口宏「リクーム、ジース」 ベジータ「あーリクーム……」
- 657 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 21:19:39 ]
- new Regex( @"^0+(?!\.)" )
でString.Emptyに置き換えてみたら でもこれだと000は""になっちゃうけど
- 658 名前:デフォルトの名無しさん [2009/02/04(水) 21:22:25 ]
- >>655
C#の構文は知らないのですが、 /^0+(\d)/$1/ に相当する正規表現でどうでしょうか
- 659 名前:デフォルトの名無しさん [2009/02/05(木) 10:33:34 ]
- >>657
>>658 ありがとう(・ω・) でもダメですた(;´Д`) ^0+(?!\.) 開始0の入力が不可ですた /^0+(\d)/$1/ $1がサポられてないですた お騒がせして申し訳ありませんでした。 もう少しイジくり回してみます。
- 660 名前:デフォルトの名無しさん [2009/02/05(木) 11:13:55 ]
- 秀丸エディタでの正規表現です。
abcdefghijxyz abcdefg xyzdefabc から1行の中にabcとxyzの両方を含む行(1と3行目)を検索したいのですがどのように書いたらいいですか? (.*abc.*xyz.*\n)|(.*xyz.*abc.*\n) 上のように書くとできるのですが含む文字列を増やした場合大変そうです。 本来はどのように書くのでしょうか教えてください。 簡単に&のような文字があるんでしょうか。
- 661 名前:659 [2009/02/05(木) 12:04:30 ]
- お騒がせしました(・ω・)出来まスタ スタ
解:System.Text.RegularExpressions.Regex(@"(^|(?=\.))0(?=[0-9])"); ありがとう御座いました。
- 662 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 13:24:20 ]
- >>660
www.din.or.jp/~ohzaki/regex.htm#And
- 663 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 14:27:14 ]
- >>660
^(?=.*abc)(?=.*xyz).*$
- 664 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 15:37:08 ]
- テキストファイルの検索でファイル内に複数の単語があるかどうか検索するときには
どういった感じにすればいいんでしょうか?
- 665 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 15:46:23 ]
- >>664
ttp://www.pururu.co.jp/goods/item/430-0168/
- 666 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 10:30:49 ]
- クラスの中でグループを使いたい場合はどうしたらいいですか?
[123(456)] とした場合1/2/3/456にマッチする。
- 667 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 10:32:36 ]
- 中じゃなく外でやれ。
([123]|456)
- 668 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 11:17:30 ]
- なるほろろ
- 669 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 13:05:59 ]
- いやん。中に出して!
- 670 名前:659 [2009/02/06(金) 18:08:08 ]
- >>667 悔しいけど感じちゃう ビクンッビクンッ
- 671 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:46:31 ]
- janeviewでwsh使用してますが、
2000にマッチして、DATE: 2000にはマッチしないようにしたいのですが どうしたらいいですか?
- 672 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:10:55 ]
- (?<!DATE:)2000
かな。たぶん・・・ >>2 の www.kt.rim.or.jp/~kbk/regex/regex.html#NEGATIVELOOKBEHIND を読んで。
- 673 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:14:47 ]
- おっと、WSH か・・・ダメかもしれないね。
if文で2重チェックすればいいんじゃない?
- 674 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:22:42 ]
- >>2 の
.NET Framework 正規表現言語要素 msdn.microsoft.com/library/ja/cpgenref/html/cpconregularexpressionslanguageelements.asp にちゃんと書いてあった。 .NET なら (?<!・・・・) が使えるみたいだけど、WSH はよくわからん。どこに書いてるんだろう・・・
- 675 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:28:02 ]
- WSH(JScript)の正規表現は↓でおk
msdn.microsoft.com/ja-jp/library/28hw3sce.aspx
- 676 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:29:02 ]
- ググったら出てきた。
正規表現による Visual Basic Scripting Edition (VBScript) の機能強化 msdn.microsoft.com/ja-jp/library/ms974570.aspx ここには (?<!・・・) は書いてない。 書いてないから出来ない、と考えるべきか、メンドクサイから書かなかったのか。 出来ることは書くが、出来ないことは書かない。フツウ、そうだよな・・・ ちなみに文書の日付は May 10, 1999 だ。 自分で実験してたしかめろや。
- 677 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:32:59 ]
- >>675 そっちのが新しい文書やね。やっぱり (?<!・・・) は書いてない。
- 678 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:42:20 ]
- 鬼車使えばいいじゃん
- 679 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 03:54:02 ]
- >>672-678皆さんありがとうございます。
>>678さん いつのまにか鬼車ってやつに変わってたんですね ヘルプの更新してなかったので気が付かなかったです。 鬼車にしたら>>672さんのやり方で出来そうだったんですけど、 なぜか、「正規検索のテスト」のウィンドウ上だとうまく出来てるみたいなんですが、 実際に「ログから検索」にかけるとDATE: 2000が掛かってしまうみたいです。(でもハイライトされない) 結局、検索を本文のみに絞るオプションを発見して一応望む結果は出せたのですが、 何故そうなるのか、どうもしっくり来ないです… 逆に(?<=DATE: )2000でログ検索かけてみると今度は全くマッチしない状態になります。 でもテストウィンドウ上ではちゃんとマッチするんですよね…。 なんかおかしい気がします。Janeのバグなんでしょうかね?
- 680 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:12:26 ]
- hoge.net/dir/image/3桁の数字/3桁の数字.jpgというURLがあります
最後の「3桁の数字.jpg」を抜き出した意のですが、どのようにやったら綺麗にかけますか? ヒントをください
- 681 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:16:20 ]
- /[0-9][0-9][0-9].jpg$/
- 682 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:41:09 ]
- /[0-9][0-9][0-9]\.jpg$/
- 683 名前:680 mailto:sage [2009/02/07(土) 20:52:29 ]
- わかりました感謝します
- 684 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:33:57 ]
- /\d{3}\.jpg$/
- 685 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 19:35:31 ]
- gawkの質問です。
村にはヒットさせたいが、川村とか大村とか村の前に特定の文字がついた場合にはヒットしたくない場合、正規表現ではどう書けばいいでしょう? /![川大]村/ とかでいいんでしょうか?
- 686 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 21:35:40 ]
- /[^川大]村/
- 687 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 21:52:07 ]
- ありがとうございました。
- 688 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:03:09 ]
- これだとただの「村」にはマッチしないんだよな
- 689 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:11:32 ]
- 正規表現は難しいからね。これ自体が一つのプログラミング言語と同等だし。
- 690 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:13:29 ]
- いや、それはない
- 691 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:21:53 ]
- /[^川大]村|^村/
これはどうかね
- 692 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 08:51:21 ]
- 後方一致
/(?<![川大])村/
- 693 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 09:55:50 ]
- gawkでって話だから戻り読みはなしだろう。
- 694 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:02:24 ]
- ●正規表現の使用環境
サクラエディタ v1.6.4.0 ●検索か置換か? 置換 ●説明 「 xml:space=preserve>」を検索のキーとして キーを含む行末までの文を置換したい ●対象データ <string1 xml:space=preserve> </string1> <string2 xml:space=preserve> </string2> ●希望する結果 <string1/> <string2/> よろしくお願いします
- 695 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:27:10 ]
- s/<[^>]*xml:space=preserve>//g、でどうかな。
- 696 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 01:01:41 ]
- * で貪欲マッチするとマズいか。
最初の文字が x だから、 s/<[^x]*xml:space=preserve>//g、でどうだ。
- 697 名前:デフォルトの名無しさん [2009/02/11(水) 13:40:25 ]
- >>694
s/<([^\s]+)\sxml:space=preserve>[^\n]+<\/\1>/<\1\/>/g でどうでしょう。
- 698 名前:デフォルトの名無しさん [2009/02/11(水) 13:44:59 ]
- s/<([^\s]+)\sxml:space=preserve>[^\r\n]+<\/\1>/<\1\/>/g
改行コードが文字コードによっていろいろなので少し修正 XMLが複雑な入れ子構造だとうまく動作しない場合がありえますが シンプルな構造で、閉じタグも同じ行にあるのなら大丈夫かも。 サクラエディタは持ってませんが()でのキャプチャは\数字で参照できるようですね。
- 699 名前:デフォルトの名無しさん [2009/02/11(水) 13:47:57 ]
- s/<([^\s]+)\sxml:space=preserve>[^\r\n]+<\/\1>/<$1\/>/g
こういう風にも書けるのかな
- 700 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 15:55:48 ]
- Perl互換の正規表現に対応しているソフトで
ab cd を検索するのに /ab.cd/m と書いたのにヒットしません。 /ab.*cd/m も /ab\ncd/m もダメです。バグでしょうか?
- 701 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 16:42:50 ]
- >>700
そのソフトの名前を出してくれないならどこまで互換性あるのかわからないし 作者かユーザーに聞けとしか。
- 702 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 17:15:32 ]
- >>700
ほんとうにperl互換なら、s オプションをつければいいと思う。 /ab[\r\n]*cd/s
- 703 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:09:38 ]
- >>701
このeDocArrangementというソフトです。業務用なので値段がすごいです。試用版で勉強中です。 OCR結果から顧客名を取り出す作業をしたいと思いまして。。。 www.technostyle.net/edocarrangement/ >>702 ありがとうございました。出来ました。 \nだけではダメなんですね。詳説正規表現を読み始めたところですが、そんなことは書いてないような気がします。 別の教科書を探すべきでしょうか?
- 704 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:12:36 ]
- >>703
\r\nなのはWindows環境だからじゃないの? それでもオープン時にテキストモード指定してれば\nでいいけど。
- 705 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:18:46 ]
- >>704
はい。窓です。正規表現の世界では異端なんですねw
- 706 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:28:21 ]
- そもそもそのデータはどうやって持ってきてるの?
もしもデータがファイルにあって、ファイルオープンのコードを自分で書いたのなら そのパラメタが間違ってるよ。
- 707 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:46:37 ]
- >>706
OCRデータから目的のテキストだけを抜き出す作業です。 xdwファイルにOCRデータがありまして … 氏名 西村ひろゆき 生年月日 … というデータから名前を抜き出す作業です。 /氏名\n(.*)\n生年月日/m で抜き出せると思って試行錯誤したんですが、うまくいかなくて泣きついた次第です。 ファイルオープンのコードをかくという作業はありません。というか、低レベルなのでそういう高度な作業はよくわからない状態です。。。
- 708 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:52:31 ]
- >>703
もし、正規表現を使い始めたばかりなら、詳説正規表現はまだ読むべきじゃない。 読むならまず入門書から入るべきかと。
- 709 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 18:56:53 ]
- >>708
ありがとうございます。たしかに自分には早いのではないかという気がしていました。 はっきりと断言していただきありがとうございます。初心者用の教科書をAmazonで探します。 もしもお勧めがあれば、ご教示いただけましたら幸いです。希望ばかりで大変心苦しいのですが。。。
- 710 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 19:24:02 ]
- >>705
行の末尾がOSによって異なるんだよ。 \n だけのOS(うにくす系) \r だけのOS(りんご系) \r\n 両方必要なOS(まど系) (ここまでは、パソコンの基礎知識) この3種類に共通に使えるように [\r\n]* って書くんだよ。 (これは正規表現の応用問題。よく使う慣用句みたいなもの)
- 711 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 19:24:13 ]
- 自分はPerl本から入ったクチだけど、>>709の場合、
Perlの処理部分については必要ないよね、おそらく。 特に正規表現に関して言うなら、試行錯誤して身につけたものの方が多い。 一番参考にしたのは秀丸のヘルプだったりする。 だから本を買う前に、Googleで正規表現を検索して、トップ30ぐらいまでの ページを順に読むほうがよいかと。 テキストエディタでの正規表現の利用方法を記載しているものもあるけど、 それらも基本は同じだから、まずそこでイメージを掴むべきかと。 本を買うのは、その後。、少しでも自分のイメージができた後で書店で中身を 確認して買うべきだと思う。 最近のテキストエディタは検索結果に一致する箇所にマーカーをするものもあるから、 それで勉強するのもベストかと。 自分が知っている分では秀丸とSakuraエディタ。それ以外にもあるとは思う。
- 712 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 20:34:50 ]
- 俺のオススメは >>2 のいちばん最初に書いてある
正規表現メモ www.kt.rim.or.jp/~kbk/regex/regex.html だな。
- 713 名前:694 mailto:sage [2009/02/11(水) 21:33:37 ]
- >>695-699
お答えいただき、ありがとうございました 早速試してみたのですが、検索に引っかかりませんでした…
- 714 名前:デフォルトの名無しさん [2009/02/11(水) 22:57:49 ]
- >>713
サクラエディタを使ったことないので、サクラエディタでの置換方法は分からないのですが <(\S+)\sxml:space=preserve>[^\r\n]*<\/\1> で検索にヒットしないでしょうか? あとは、それを <$1\/> に換えるだけですむのですが・・
- 715 名前:デフォルトの名無しさん [2009/02/11(水) 22:59:51 ]
- 714では、
[^\r\n]+ を [^\r\n]* にしました
- 716 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:28:16 ]
- っつーか、>>695のsed式での回答ってどうなんだろう?
個人的には、環境に左右されないからアリだと思うんだけど。 スラッシュで囲むっていう知識は前提にしていいのかな?
- 717 名前:694 mailto:sage [2009/02/12(木) 01:29:13 ]
- >>714
出来ました!ありがとうございます! しばらく頑張ってたのですが、どうにもうまくいかず参ってたところでした 本当にありがとうございました!
- 718 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 02:18:07 ]
- >>716
まあ正規表現だってのをはっきりさせるのはいいと思うけど、 スラッシュ以外も区切りにできる(できないのもあるけど)というのを 知らない人がさらに増えるようなきがするのはやだなあ。
- 719 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 08:50:34 ]
- >>718
なんか論点が違う気も。
- 720 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 02:32:08 ]
- Firefoxのjavascriptを使って、
<div class="mori"> <h2>てすと</h2> <img src="./test.gif"> </div> <div>わわわ</div> のようなHTMLからclassがmoriの上四行の部分を抜き出したいのですが、正規表現を <div class="mori">(.|\n)*<\/div> とすると最後の<div>わわわ</div>まで入ってしまいます。 次に <div class="mori">[^(</div>)]*<\/div> を試してみたのですが、これもうまくいきません。 角カッコの中は丸カッコで囲んでも無視されて一文字ずつに分解されてしまうようです。 どうすればいいんでしょうか?
- 721 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 03:26:11 ]
- >>720
*や+は最も長く貪欲にマッチしようとするから、最後の</div>にマッチする。 *や+の直後に?を付ければ最小マッチになってできる限り短くしようとするから 望むような結果になるはず。
- 722 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 10:14:34 ]
- JavaScriptならDOMで操作しないさいよ…
- 723 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:04:39 ]
- >>721
おおおおお!まさにこれを求めていました! いろんな場面で使えそうでとても助かります。どうもありがとうございます。 >>722 それがGM_xmlhttpRequestで得る値なので、全部テキスト形式になってしまうのです。
- 724 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:09:33 ]
- phpで正規表現を使うかプログラムでゴリゴリ書くか迷ってます
やりたい事は、見出し語:[発音,][定義1][,"例文1","例文2",...][ *注記][; 定義2...]みたいな テキストを分解して各(配列)変数に設定する、みたいな事なのですがpreg_match_allみたいな関数で この程度なら実現可能そうでしょうか? 既に結構時間を使ってるので見込みが無さそうならサッサと見切りを付けたいのですが…
- 725 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:51:03 ]
- 全部ちゃんと分割できるよ
- 726 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 13:28:57 ]
- うっ…出来るんですか。(まだ定義の分割すら碌に出来てない…)
もう少し頑張ってみます
- 727 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 20:45:00 ]
- [*]の[]を普通の文字として扱いたいときどうすればいいんですか?
\[*\]だと無理ですよね
- 728 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 20:49:38 ]
- ふつうは \[*\] でいいんだよ。ふつうは。
- 729 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 20:59:08 ]
- そうですか・・・
\[*\]だと]しかクォートされないので・・・
- 730 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:21:17 ]
- [[]*\]
- 731 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:40:27 ]
- やはり]だけでした
- 732 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:45:24 ]
- それをどうやって確かめてるんだ
- 733 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:53:05 ]
- アナログ放送をIEPGで登録すると[S]や[字]といった文字が名前に付きこれが邪魔なのでリネームしたいんです
たとえばファイル名[S][字].avi s/\[S\]// してやるとファイル名[字].avi となりますが s/\[*\]// とするとファイル名[S[字].avi といった感じになります
- 734 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:57:33 ]
- >>733
頭悪いのに勝手に自分で問題を切り分けずに、最初からそれをいえよw *の使い方しらべとけ
- 735 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:00:07 ]
- わからないんですね
すいません
- 736 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:00:43 ]
- 「頭悪い」なんていきなり何様ですか
わからないならわからないと言えばいいじゃないですか
- 737 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:17:22 ]
- どっからどう見ても最初に質問した奴と途中の奴が別人w
- 738 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:19:09 ]
- s/\[*m9(^Д^)\]//
- 739 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:28:42 ]
- s/\[..*\]//
- 740 名前:デフォルトの名無しさん [2009/02/14(土) 23:26:05 ]
- >733
横レス失礼します。 s/\[[^\]]*\]//g これでどうでしょうか?
- 741 名前:デフォルトの名無しさん [2009/02/14(土) 23:33:42 ]
- >>733
s/\[.*?\]//g これでも大丈夫でしょう。 最短マッチに対応している正規表現エンジンの場合は。 *や+は条件に合致しつつできるだけ多くの文字を消費するような選択をします。 *?、+?は最短マッチといって、その条件を満たす最短の場合が選ばれます。 想定される用途では否定の文字クラス [^いろいろな文字] を使うか 最短マッチの .*? を使われると良いとおもいます。 別の表現なら否定先読み (?!文字列) をつかっても長くなりそうですが書けます。 ご参考になれば幸いです。
- 742 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 10:10:19 ]
- >>733
最初からそれを書け。 コミュニケーション能力不足。 人間相手にコミュニケーションできないで コンピュータ相手のコミュニケーションが出来ると思うのか? s/\[[S字]\]//
- 743 名前:デフォルトの名無しさん [2009/02/15(日) 15:20:54 ]
- 補足です。
>>741の正規表現は*の前に見づらいかもしれませんがピリオド.があるのでご注意ください。 >>733の正規表現 /\[*\]/ にヒットする文字列はたとえば ] [] [[] [[[] [[[[] [[[[[] になります。
- 744 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 17:02:57 ]
- いくらなんでも初歩で躓きすぎだろ
質問に無関係な知識押し付けてる方もひどいが
- 745 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 00:02:06 ]
- >>742が一番馬鹿に見える
- 746 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 00:17:40 ]
- キラーパスだな
- 747 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 03:22:04 ]
- >>742はネタだろJK
- 748 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 14:12:37 ]
- ++とか(?>)とかのpossessive quantifierってどういうときに使ったっけ?
あれば便利そうは気はするし、実際なんかで使った記憶はあるんだけど思い出せない
- 749 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 18:05:15 ]
- わからないから聞いてるならまだしも、忘れたから聞いてるってのはそれこそググレば?
- 750 名前:デフォルトの名無しさん [2009/02/19(木) 20:45:50 ]
- すいません質問させてください
@/home/test/hoge/test/test.txt A/home/test/hoge/test/document.txt ↑のパスがありまして、そこからtestで検索をすると @のtext.txtのみが該当する正規表現ってうまく出来ないものでしょうか? ファイルまでの途中のパスは含めないで最後のスラッシュ後のファイル名のみ 検索対象としたいのですが悩みまくりです・・・ イメージ的にはエディターでの正規表現で@のみ該当させる感じです。 どなたかご教授願えないでしょうか?
- 751 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 20:58:11 ]
- C#を使っています
string か strin か stri か str か st か s にマッチするパターンを今は↓のように書いているんですが ^s(t(r(i(n(g)?)?)?)?)?$ もっと分かりやすい書き方ってありますか?
- 752 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:42:23 ]
- >>750
検索キー 「test.txt」
|

|