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