私のような文字列をマッチさせたい:正規表現マッチテキスト
The sentence is 'He said "Hello there"'
The sentence is "He said 'Hello there'"
をし、外側の単一引用符または二重引用符内の文である単一のキャプチャ(マッチ)を取り戻します。
^The sentence is (?:(?:'([^']*)')|(?:"([^"]*)"))$
上記の正規表現は、キャプチャされた2つのグループを返します.1つは空、もう1つは目的の文が含まれています。
^The sentence is (['"])(.*)\1$
第1グループとして引用符(一重引用符または二重引用符)を、第2グループとして引用符を返します。
Iは最初のグループの非捕捉、
^The sentence is (?:['"])(.*)\1$
を行う場合、私は捕捉基に後で参照を使用することはできません。 (\ 1はもちろん、一重引用符または二重引用符を参照していません)
"キャプチャ"が後で正規表現で参照できるが、キャプチャされた値が返されないグループを持つ方法はありますか試合のリストに?
私の(一見シンプルな)問題を解決するための他の方法です。
最初の例では、実際には何をキャプチャしません。 2番目の例では、外側の一重引用符または二重引用符を含む文を取得します。 (?: '| ")(?:' |") ' –
私は、引用符も取り込みたいと思っていますが、質問に戻って確認しませんでした。私はそれが助けてうれしいです。 –
最初の引用がシングルかダブルかはわかりませんが、不平衡文がマッチすることを意味します:文は '' abc 123''と ''彼は "さようなら" ' と最後の返信'文章。 このような文字列を不均衡な引用符とマッチさせないといいでしょう。 –