正規表現は、行末にある に一致します/abc$/
。abc
逆はどうすればいいですか?
abc
行末以外にマッチさせたい。
さらに、正規表現を使用して文字列を置き換えるのでabc
、文字列の後のものではなく、 のみをキャプチャしたいので、機能/abc.+$/
しません。abc
abc
使用する正しい正規表現は何ですか?
/abc(?!$)/
(?!$)
は否定先読みです。$
(行末) が直接続かない abc の一致を探します。
に対してテスト済み
それをあなたのケースに適用します:
ruby-1.9.2-p290 :007 > "aslkdjfabcalskdfjaabcaabc".gsub(/abc(?!$)/, 'xyz')
=> "aslkdjfxyzalskdfjaxyzaabc"