0

OK正規表現が必要になることはめったにないので、確かにひどいですが、単純な解析ではうまくいかない状況に陥りました。それで、ここで仕事をしている間に正規表現全体を自分自身に教えようとした後、私はついに諦めて専門家に尋ねました。私は単にSQLファイルを解析し、それをGOステートメントで分割しています。問題は、のような他の言葉からGOCREATE TABLE GOPHERを引き出すことができないことです。したがって、スペースのみで、大文字と小文字を区別しないGOという単語がある行がある場合は、分割すると言って、かなり安全だと思います。

これが私が持っているものです、私はそれがかなり近いと思います、しかしそれが現在何にも一致していないので私は何か間違ったことをしています。

^+\s*[GO]\s*\Z

*ケースは無視ケースフラグで処理できるので、心配する必要はありません。

単純に書くと

^+[GO]+\Z

ほとんど動作しますが、前後のスペースを無視しないので、そうなるGOと思い\s*ましたが、一致しないようです。誰でも私のためにこれを修正することができます、私がここでフラブしているものの簡単な説明で?

4

1 に答える 1

3

@"(?<=\bGO\b)"完全な単語「GO」の直後のゼロ幅境界に一致するパターンでRegex.Splitを使用します。

見る

于 2012-06-05T14:41:52.303 に答える