これは私の正規表現です。私は間違っていなければ、POSIXの正規表現を使用するRubyを使っています。ここでRuby正規表現:改行または文字列の先頭で始まる文字列を分割しますか?
regex = /(?:\n^)(\*[\w+ ?]+\*)\n/
が私の目標です:私はそれらのアスタリスクを含め*delimited by asterisks*
ある正規表現の文字列を、分割したいです。 しかし、:改行文字(\n
)が付いているか、それは文字列全体の先頭です。これは私が扱っている文字列です。
"*Friday*\nDo not *break here*\n*But break here*\nBut again, not this"
私の正規表現は*Friday*
試合で適切に分割されていないが、それはは*But break here*
一致で分割(それはまたhere
分割で投げています)です。私の問題は最初のグループのどこかにあると思います。(?:\n^)
- それは間違っていることを知っていますし、それを書く正しい方法について完全にはわかっていません。誰かが光を当てることはできますか?ここに私の完全なコードがあります。この中で結果
regex = /(?:\n^)(\*[\w+ ?]+\*)\n/
str = "*Friday*\nDo not *break here*\n*But break here*\nBut again, not this"
str.split(regex)
:
>>> ["*Friday*\nDo not *break here*", "*But break here*", "But again, not this"]
は、私はそれがこれをしたい:
>>> ["*Friday*", "Do not *break here*", "*But break here*", "But again, not this"]
編集#1:私は私の正規表現と結果を更新しました。 (2011/10/18 16:26 CST)
編集#2:もう一度更新しました。 (16:32 CST)
文字列はこのようですか?または、実際の\ nは別の行ですか? – FailedDev
改行は実際には文字列内にあります。 –