• ベストアンサー

正規表現で、ある文末に不一致の抽出方法

文頭が必ず「abc」で始まり、且つ、文末が「def」でないものに一致させる正規表現の記述方法を教えてください。 たとえば、次のような場合、「三菱」で始まり、且つ、文末が「株式会社」でないものはNGのついた3つとなります。 三菱商事株式会社 ←OK 三菱銀行株式会社 ←OK 三菱商事有限会社 ←NG 三井商事株式会社 ←NG 株式会社三菱商事 ←NG

質問者が選んだベストアンサー

  • ベストアンサー
  • dezimac
  • ベストアンサー率56% (2365/4208)
回答No.1

正規表現メタ文字(正規表現演算子) ^:行頭 $:行末 .:任意の一文字 *:0回以上の繰り返し ^abc.*def$

関連するQ&A

  • 正規表現で、ある文末に不一致の抽出方法

    先ほど私の質問の仕方が悪かったので、再質問いたします。 文頭が必ず「abc」で始まり、且つ、文末が「def」でないものに一致させる正規表現の記述方法を教えてください。 たとえば、次のような場合、「三菱」で始まり、且つ、文末が「株式会社」でないものは「三菱商事有限会社」となります。 三菱商事株式会社  三菱銀行株式会社  三菱商事有限会社 ←一致 三井商事株式会社  株式会社三菱商事 

  • 正規表現で

    正規表現で、英大文字と記号だけからなる文字列、を表すにはどうすればよいでしょうか。言い方を変えると、とにかく英小文字は含まないという事なんですが… [^a-z]+ かなと思ったのですがダメでした。 123#ABC : OK 123#aBC : NG みたいな感じです。 よろしくお願いします。

  • 秀丸の検索・置換の正規表現の最短一致の挙動が変です

    秀丸の検索または置換の正規表現の 最短一致での挙動ですが、 /abc/def/ghi/jkl/mno/pqr/st/uvw.xyz の先頭にカーソルを置いた状態で、 (質問1) 正規表現のチェックボックスをチェックして /.*$ で検索すると /abc/def/ghi/jkl/mno/pqr/st/uvw.xyz が検索されると思うのですが 実際には /def/ghi/jkl/mno/pqr/st/uvw.xyz が検索されてしまいます。 なぜでしょうか。 (/abc/.*$とするとカーソルがある /abc/def/ghi/jkl/mno/pqr/st/uvw.xyz ではなく次の行以降の /abc/def/ghi/jkl/mno/pqr/st/uvw.xyz が検索されてしまいます?) (質問2) 正規表現のチェックボックスをチェックして /.*?$ で検索すると最短一致となるため /uvw.xyz が検索されると思うのですが 実際には /def/ghi/jkl/mno/pqr/st/uvw.xyz が検索されてしまいます。 なぜでしょうか。 (なお、/[^/]*$では/uvw.xyzが検索されます)

  • 最短一致の使い方

    最短一致の使い方がよくわりません。 $str = "<div><div><p>ABC</p></div><div><p>DEF</p></div></div>"; $str =~ /<div.*?ABC.*?<\/div>/; print $&; 「<div><p>ABC</p></div>」となると考えていたのですが、 「<div><div><p>ABC</p></div>」と表示されます。 正規表現をどのようにしたら期待通りの結果を得られますでしょうか? 前半の最短一致がダメで後半の最短一致がOKという理由もできたら教えて下さい。

    • ベストアンサー
    • Perl
  • エクセルVBAで正規表現の使い方に関して

    VBA初心者です。 エクセルで会社名の曖昧な検索をしたくて調べていたら正規表現というものがあることを知りました。 けど難しくてうまく動いてくれません。。 以下のようなリストを曖昧に検索するにはどのような正規表現のプログラムを組めばいいのでしょうか? ・数あるリストの中から重複している会社があるか検索したいです。 ・前株だったり後株だったり、中には株式会社が省略されているものもあります。  また株式会社と入力されていたり、(株)と省略されていたりします。  (有限会社も同様) ・"株式会社"と会社名の間にスペースがあったりなかったりします。 ・会社名の後にスペースをあけて~工場などとついているものもあります。 ・カタカナは大文字だったり小文字だったりします。 このようなリストの中から、会社の正式名称で検索すると重複している会社がヒットするようにしたいのですが・・・ 例)株式会社 ×××   →検索→   (株)××× ~工場   ↑検索したい会社            ↑検索結果 ちょっとわかりにくいですが、書き方のヒントだけでも教えていただけると助かります。 よろしくお願いしますm(_ _)m

  • 正規表現で携帯電話のみをはじき固定電話を許可

    正規表現で携帯電話のみをはじき、固定電話を許可するように記述するのは どのように書いたらよろしいでしょうか? 検索すると電話番号をOKとするものは見つかるのですが 携帯電話=NG、固定電話=OK とするものが見つからないため どなたか教えていただけないでしょうか? よろしくお願いします!!

  • エクセルVBAで文字列の重複を削除する方法?

    VBAでの質問でしゅ。エクセルは2000です。 変数MyStrに全角カンマで区切られた文字列データが10種類程度あります。 現在、ある条件のもとに、MyStr=MyStr & Cell(i,2) & "、"のように取り込んで、最後にMyStr=Left(MyStr, Len(MyStr) - 1) で一番最後の「、」を削除しています。 例えば、MyStrの中身は、 OK建設株式会社、Goo工業合資会社、MM商事有限会社、AA合名会社、株式会社BB企画、OK建設株式会社、CC工業合資会社、DD商事有限会社、EE合名会社、株式会社BB企画 のような感じです。この中には重複したデータがある可能性があります。(例ではOK建設株式会社と株式会社BB企画) これを重複を排除し、変数MyStrの中身を、 OK建設株式会社、Goo工業合資会社、MM商事有限会社、AA合名会社、株式会社BB企画、CC工業合資会社、DD商事有限会社、EE合名会社  と変える方法はないでしょうか? あるいは、変数 MyStrにデータを取り込む際にすでにMyStrに入っているデータは除くような方法でもかまいません。 お知恵をお貸しくださいませ。 (o。_。)oペコッ.

  • 部分一致検索

    VB2010にて部分一致検索についての質問です。 DataGridView1のセル(0,0)に文章(例:The apple is red.) があって、DataGridView2のセル(1,1)に単語(2つ以上も可能とする)(例:apple is) が入っていたとします。 DataGridView2のセル(1,1)に入っている単語がDataGridView1(0,0)のセルに入っている文章に含まれていたら、OKを返すという条件文を作りたいのですが、どう書いたらいいのかわかりません。 ご教授いただけると嬉しいです。よろしくお願いします。例は文中の単語検索ですが、可能ならば文頭、文末の検索にも対応していただけると嬉しいです。

  • 文頭・文末の記号をチェック

    お世話になります。 Perlでの正規表現について質問させていただきます。 とあるフォームに入力した値が、特定の条件を満たさない場合に エラーメッセージを表示させたいのですが、うまくいきません。 以下に条件を記載いたします。 条件 1. 小文字、半角英数字、(一部の)記号で2~32文字以内。 2. 使用できる記号は、ハイフン(-)・アンダーバー(_)・ドット(.)のみ。 3. 上記記号が使用できるのは文中のみで、先頭及び末尾には使用できない。 当方、Perl初心者でして、 解説サイト等から、見よう見まねで試してみたところ、 条件1と2は、何とか成功したのですが、 3の記述の仕方がどうしてもわかりません。 どなたか、おわかりの方がいらっしゃれば ご教授いただけませんでしょうか。 if($FORM{"account"} ここの記述の仕方がわかりません{ $msg = '文頭・文末に記号を使用する事はできません'; &error; }

    • ベストアンサー
    • Perl
  • メールで有限会社と株式会社を間違えてしまいました。

    メールで有限会社と株式会社を間違えてしまいました。 メールの文頭で会社名を、 有限会社のところを間違えて株式会社と書いてしまいました。 すごくはずかしいです。 訂正メールを送ったほうがいいでしょうか?

専門家に質問してみよう