0

検索文字列をその構成要素に分割するための正規表現を作成しました。機能は次のとおりです。

  • 演算子:+、、、、-_ANDOR
  • 引用符による単語のグループ化(現時点ではシングルとダブル)
  • アポストロフィを正しく無視する

それで:

((?<=^|\s)(?:[\+\-]?"[^"]+"(?=\s|$)|[\+\-]?'[^']+'(?=\s|$)|[\+\-]?\S+|AND|and|OR|or)(?=$|\s))

結果の一致から区切り文字の引用符を除外する最も簡単な方法は何ですか?例:

lsdkjflws's ldkj and "lfldkfjs's ldkjfls" lskdj

結果は次のようになります。

  • lsdkjflwsの
  • ldkj
  • 「lfldkfjsのldkjfls」
  • lskdj

これを行う必要はありません。正規表現でもう1つのステップを実行したいと思います。

4

1 に答える 1

0

何のエンジン?否定的および肯定的な先読みをサポートしている場合は、簡単です。

これらの代わりに:

"[^"]+"

次のようなものを使用します。

(?<=")[^"]+(?=")

これにより、一致から引用が除外されますが、引用の内容のみが一致します。これがあなたの求めているものであることを願っています。

于 2010-10-11T20:08:59.167 に答える