[過去ログ] Regular Expression(正規表現) Part14 [無断転載禁止]©2ch.net (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
111(6): 2017/05/14(日)20:19 ID:IUk17Lsy(2/2) AAS
>>110
すみません、実はJaneStyleなど複数の環境で正規表現を使っていて、一番よく使うサクラエディタを例に出してしまいました。
確かにサクラエディタだと「英大文字と小文字を区別する」ってチェックがありますよね・・・
>>109
ありがとうございます!バッチリいけました。 ><
601(3): 2018/09/17(月)12:06 ID:SR+usNFF(1) AAS
C#、System.Text.RegularExpressions.Regexの正規表現で
xxの中を取り出すにはどうしたらいいのでしょう?
ただし取り出したいのはトップのxxで、xxが閉じる前にyyがあるときはそのxxは無視という条件付きです
対象文字列 "<xx><xx><yy>111</yy></xx></xx><xx>222</xx><xx>333</xx>";
試した正規表現 @"<xx>.*?[^(</yy>)]</xx>"
結果
<xx><xx><yy>111</yy></xx></xx><xx>222</xx>
<xx>333</xx>
欲しい結果
<xx><xx><yy>111</yy></xx></xx>
<xx>222</xx>
<xx>333</xx>
612: 2018/09/18(火)07:13 ID:oqy73oSH(1/3) AAS
ID変わった
その表現だと <xx><xx><yy>111</yy></xx>
欲しい結果は<xx><xx><yy>111</yy></xx></xx>
こういう尻切れになることが多い
613: 2018/09/18(火)07:16 ID:iA/s8q9i(2/5) AAS
どういうことよ
>>611の正規表現で <xx><xx><yy>111</yy></xx></xx><xx>222</xx><xx>333</xx> にマッチングすると
<xx>222</xx> と <xx>333</xx> にマッチするでしょ?
<xx><xx><yy>111</yy></xx> はどこから出てきたの?
615: 2018/09/18(火)07:46 ID:iA/s8q9i(3/5) AAS
> xxが閉じる前にyyがあるときは
これは直前ってこと?
<xx><yy>111</yy></xx> にはマッチしないってことでいいの?
618: 2018/09/18(火)08:36 ID:oqy73oSH(3/3) AAS
閉じる前というのは直前という意味で
対象が"<xx><xx><yy>111</yy></xx></xx><xx>222</xx><xx>333</xx><xx><yy>444</yy></xx>"
の場合は、<xx><yy>444</yy></xx>を無視したの3件マッチにしたい
>>611と>>617ベースできそうだからがんばってみます。ありがとう
623: 583 2018/09/18(火)18:51 ID:t0fL3l18(6/6) AAS
>>611のはミスってるね
<xx><b><a>111</a></a></xx> にマッチする
<xx><b><a>111</a></b></xx> にマッチしない
この問題は>>617で修正されてる
()* \d+ ()* のところが0回以上のループで正しく動くのは面白いな
一番外側の (?: )* はいらないかも
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.046s