Ruby 正規表現を使用して、文字列「localhost」を含まない URL と一致させたい
こちらの回答とコメントに基づいて、2 つのソリューションをまとめました。どちらも機能しているようです。
ソリューション A:
(?!.*localhost)^.*$
例: http://rubular.com/r/tQtbWacl3g
ソリューション B:
^((?!localhost).)*$
例: http://rubular.com/r/2KKnQZUMwf
問題は、彼らが何をしているのか理解できないことです。たとえば、ドキュメントによると、^
さまざまな方法で使用できます。
[^abc] Any single character except: a, b, or c
^ Start of line
しかし、ここでそれがどのように適用されているのかわかりません。
誰かが私のためにこれらの表現を分解し、それらが互いにどのように異なるかを説明できますか?