私はグーグルしてスタックオーバーフローによって提供される推奨される質問を調べてきました。しかし、私は答えを見つけることができませんでした。
正規表現を使用して文字列を解析したいのですが、文字列の例は
Lot: He said: Thou shalt not pass!
Lot
をグループとしてキャプチャし、He said: Thou shalt not pass!
。ただし、(.+): (.+)
パターン、それは戻ります
Lot: He said:
およびThou shalt not pass!
キャプチャすることは可能ですかHe said: Thou shalt not pass
正規表現を使用していますか?
最初のグループには、貪欲でない(または怠惰な)カーディナリティが必要です:(.+?): (.+)
。
http://www.regular-expressions.info/repeat.html の詳細については、「貪欲の代わりに怠惰」の章を参照してください。
これを試してみてください:
([^:]+):\s*(.*)
フラグig-i =大文字と小文字を区別せず、g =最初の一致後には戻らない、および "(。:)?(。:。*) "。
ここで例を見ることができます https://regex101.com/r/SXjg1b/1
次のものは動作します。
([^:]+): (.+)