【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】

次の文字列の<div>タグで囲まれた部分を取得したいです。

<div>タグは一番最初のもの
------------------------------------------------------------------
<div>ここは何文字かわからない</div> このうしろにも</div>が何回かきます。
------------------------------------------------------------------
ですので、最初に一致した</div>で終わりにしたいです。
処理時間もその後のテキストを見なくてもよくなるでしょうし。

@"<div>{.}\A(</div>))"

こうした所マッチしすぎてエラーになってしまいました。
よろしくお願いしまうs。

A 回答 (2件)

いわゆる「PCRE」なら \A も使えます>#1.



さておき,
・「マッチしすぎてエラーになってしまいました」とか「マッチするものが多すぎてエラーになってしまいます」って, どういうことなんでしょうか? このマッチさせる部分, 実際にはプログラムとしてどのように書いているんでしょうか.
・この文章だと「どこを取得したいのか」が分からない. 「最初の <div> から最初の </div> まで」と「最初に現れる </div> とそれに対応する <div> の間」とでは意味が異なりますよね. で, この文章ではどっちなのか判断できない.

あと, C# なら「その他(プログラム)」か「C・C++」が適当なところでしょう. いずれにしても, 「C# である」ことは明記すべきですが.
    • good
    • 0

\A が使える正規表現を私は知らないのですが、文法が


間違っていませんか?

使用している言語(もしくはテキストエディタ)を明示して
もらえないと、回答が難しいのですが、単純に考えれば、
以下で行けると思います。

<div>.*?</div>


※データに改行を含んでいる場合、使用する言語(もしくは
 テキストエディタ)によってはうまくいきません。

この回答への補足

ご回答ありがとうございます。
VS2012 の C# です。
それは試してみたのですがマッチするものが多すぎて
エラーになってしまいます・・・

おしりの</div>を【最初にマッチした】のような
特殊文字があればいいのですが・・・
どうしたものやら

補足日時:2013/01/06 22:40
    • good
    • 0
この回答へのお礼

ちなみにJavaカテゴリに質問した事をご容赦下さい。
C#カテゴリが無かったので一番近そうなカテゴリを選びました。

お礼日時:2013/01/06 22:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報