1 件の投稿を表示中 (合計 3 個)
  • 作成者
    投稿
  • #7367
    ats
    メンバー

    特定の文字列以外とマッチさせる正規表現を考えています。
    たとえば、以下の行に対して、[^(ab)]で検索を行うと、
    abcd
    bcaa
    a)(a

    ab=00CC00]cd
    b=00CC00]caa
    a)(a
    のようになりますが、本当は以下のようになって欲しいのです。
    ab=00CC00]cd
    bcaa
    a)(a

    どうも「( )」が文字として認識されているようですが、エスケープしていないので、リテラルとして判断し、文字列「ab」として処理されるとうれしいのです。

    回避策等ありましたらご教授いただければ幸いです。

    #7372
    kshi
    参加者

    ats さん、こんにちは。

    なんだかできそうでできないのですね。

    (?!ab).+

    が近いかと思いましたが、完全ではないようです。

    なんらかの置換処理であれば、
    (ab)を検索して、
    1(後方参照)を空文字列に置換する、
    という逆のやり方でしのぐしかないのかも……。

    #7744
    FLONT
    参加者

    atsさん

    3ヶ月もたっているのでもう無駄かもしれませんが、
    回避策挙げておきます。

    (a(?!b)|(?<!a)b|[^ab])

1 件の投稿を表示中 (合計 3 個)
  • このトピックに返信するにはログインしてください。