--http: // aaa / ccc
→ http: // aaa / bbb / ccc
Ich wollte einen Befehl, der in dieser Situation verwendet werden kann. Mit anderen Worten, es ist ein Ausschluss, dass es ein Muster gibt, das alles ersetzt, aber ausschließt, anstatt es zu ersetzen.
Verwenden Sie für reguläre Ausdrücke eine negative Vorausschau
Wenn Sie beispielsweise nicht nur das bisherige Spielsystem ersetzen,
"play plays played".gsub(/play(?!ed)/, "eat")
#=> "eat eats played"
Es wird zum Befehl. In Bezug auf die obige URL,
"http://aaa/ccc".gsub(/http:\/\/aaa\/(?!bbb\/)/, "http://aaa/bbb/")
#=>"http://aaa/bbb/ccc"
"http://aaa/bbb/ccc".gsub(/http:\/\/aaa\/(?!bbb\/)/, "http://aaa/bbb/")
# => "http://aaa/bbb/ccc"
Recommended Posts