[ruby-core:116775] [Ruby master Feature#20266] New syntax to escape embed strings in Regexp literal
From:
"knu (Akinori MUSHA) via ruby-core" <ruby-core@...>
Date:
2024-02-15 09:45:58 UTC
List:
ruby-core #116775
SXNzdWUgIzIwMjY2IGhhcyBiZWVuIHVwZGF0ZWQgYnkga251IChBa2lub3JpIE1VU0hBKS4NDQoN DQoNDQpJIHdhcyBhbHNvIHBhcnQgb2YgdGhlIGRpc2N1c3Npb24gY2lyY2xlIHJlZ2FyZGluZyB0 aGlzIGlkZWEuICBUaGUgbGFjayBvZiBzdXBwb3J0IGZvciBlYXNpbHkgZXNjYXBpbmcgYSBzdHJp bmcgZm9yIHJlZ3VsYXIgZXhwcmVzc2lvbnMgaGFzIGxlZCB1c2VycyB0byBvZnRlbiBvbWl0IGl0 IHdoZW4gaXQgc2VlbXMgb2J2aW91cyB0aGF0IGEgc3RyaW5nIGRvZXMgbm90IG5lZWQgZXNjYXBp bmcgKGZvciBleGFtcGxlLCB3aGVuIGl0IGlzIGFscGhhbnVtZXJpYykgb3Igd2hlbiBpdCAibG9v a3MiIHByYWN0aWNhbGx5IG9rYXkgdG8gZG8gc28uICBIb3dldmVyLCBvbWl0dGluZyBlc2NhcGlu ZyBmb3Igc29tZXRoaW5nIGxpa2UgYSBkb21haW4gbmFtZSBjb3VsZCBwb3RlbnRpYWxseSBjcmVh dGUgYSB2dWxuZXJhYmlsaXR5IHNpbmNlIHRoZSBkb3QgaXMgYSBtZXRhIGNoYXJhY3Rlci4NDQoN DQpDb25zaWRlciB0aGUgc2NlbmFyaW8gd2hlcmUgdGhlIHZhcmlhYmxlIGBob3N0bmFtZWAgaXMg c2V0IHRvIGAiZXhhbXBsZS5jby5qcCJgLiAgSW4gdGhlIGV4cHJlc3Npb24gYCVye1xBaHR0cHM6 Ly8je2hvc3RuYW1lfS8ubWF0Y2g/KGNhbGxiYWNrX3VybClgIHdoZXJlIG5lY2Vzc2FyeSBlc2Nh cGluZyBpcyBvbWl0dGVkLCBpdCB1bndhbnRlZGx5IG1hdGNoZXMgYCJodHRwczovL2V4YW1wbGUu Y28vanAv4oCmImAgd2hpY2ggaXMgYSBVUkwgdW5kZXIgYSBjb21wbGV0ZWx5IGRpZmZlcmVudCBk b21haW4uDQ0KDQ0KVGhhdCdzIHdoeSBJIGJlbGlldmUgaXQgaXMgbmVjZXNzYXJ5IGZvciBSdWJ5 IHRvIHByb3ZpZGUgYW4gZWFzeSBhbmQgcmVhZGFibGUgd2F5IHRvIGVzY2FwZSBhIHN0cmluZyBp biBpbnRlcnBvbGF0aW9uLiAgSXQgd291bGQgaGVscCBjb2RlIHJldmlld2VycyBhbmQgcmV2aWV3 ZWVzIGEgbG90IGlmIGVzY2FwaW5nIGNvc3RlZCBqdXN0IG9uZSBjaGFyYWN0ZXIsIHdoZXJlYXMg IkFkZCBSZWdleHAucXVvdGUoKSBoZXJlIGFuZCBoZXJlIiBjYW4gbG9vayBzY2FyeSBhbmQgcGVk YW50aWMuDQ0KDQ0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0NCkZl YXR1cmUgIzIwMjY2OiBOZXcgc3ludGF4IHRvIGVzY2FwZSBlbWJlZCBzdHJpbmdzIGluIFJlZ2V4 cCBsaXRlcmFsDQ0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIwMjY2I2NoYW5n ZS0xMDY3OTkNDQoNDQoqIEF1dGhvcjogdXNhIChVc2FrdSBOQUtBTVVSQSkNDQoqIFN0YXR1czog T3Blbg0NCiogUHJpb3JpdHk6IE5vcm1hbA0NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0NDQojIFByZW1pc2UNDQoNDQpXaGVuIHVzaW5nIGVtYmVkIHN0cmluZ3MgaW4g UmVnZXhwIGxpdGVyYWwsIGl0IGlzIGludGVycHJldGVkIGFzIGEgcGFydCBvZiB0aGUgUmVnZXhw Lg0NCg0NCmBgYHJ1YnkNDQpmb28gPSAiW2Etel0iDQ0KcCAvI3tmb299LyAjPT4gL1thLXpdLw0N CmBgYA0NCg0NClNvLCBjdXJyZW50bHkgd2Ugb2Z0ZW4gaGF2ZSB0byBlc2NhcGUgdGhlIGVtYmVk IHN0cmluZ3MuDQ0KDQ0KYGBgcnVieQ0NCmZvbyA9ICJbYS16XSINDQpwIC8je1JlZ2V4cC5xdW90 ZShmb28pfS8gIz0+IC9cW2FcLXpcXS8NDQpgYGANDQoNDQpUaGlzIGlzIHZlcnkgbG9uZyBhbmQg cGFpbmZ1bCB0byB3cml0ZSBldmVyeSB0aW1lLg0NClNvLCBJIHByb3Bvc2UgbmV3IHN5bnRheCB0 byBlc2NhcGUgZW1iZWQgc3RyaW5ncyBhdXRvbWF0aWNhbGx5Lg0NCg0NCiMgUHJvcG9zYWwNDQoN DQpBZGRpbmcgbmV3IHRva2VuIGAjez1gIGluIFJlZ2V4cCBsaXRlcmFsOg0NCg0NCmBgYHJ1YnkN DQpmb28gPSAiW2Etel0iDQ0KcCAvI3s9Zm9vfS8gIz0+IC9cW2FcLXpcXS8NDQpgYGANDQoNDQpX aGVuIGAjez1gIGlzIHVzZWQgaW5zdGVhZCBvZiBgI3tgLCBydWJ5IGNhbGxzIGBSZWdleHAucXVv dGVgIGludGVybmFsbHkuDQ0KDQ0KIyBDb21wYXRpYmlsaXR5DQ0KDQ0KQ3VycmVudCBydWJ5IGNh dXNlcyBzeW50YXggZXJyb3Igd2hlbiB1c2luZyBgI3s9YCwgdGhlbiB0aGVyZSBpcyBubyBpbmNv bXBhdGliaWx0eS4NDQoNDQojIE91dCBvZiBzY29wZSBvZiB0aGlzIHByb3Bvc2FsDQ0KDQ0KSSBk byBub3QgcHJvcG9zZSBhYm91dCBgI3s9YCBpbiBhbm90aGVyIGxpdGVyYWxzLiAgVGhleSBhcmUg b3V0IG9mIHNjb3BlIG9mIHRoaXMgcHJvcG9zYWwuDQ0KDQ0KDQ0KDQ0KLS0gDQ0KaHR0cHM6Ly9i dWdzLnJ1YnktbGFuZy5vcmcvDQ0KIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KIHJ1YnktY29yZSBtYWlsaW5nIGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1Ynkt bGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8gcnVieS1jb3JlLWxlYXZl QG1sLnJ1YnktbGFuZy5vcmcKIHJ1YnktY29yZSBpbmZvIC0tIGh0dHBzOi8vbWwucnVieS1sYW5n Lm9yZy9tYWlsbWFuMy9wb3N0b3JpdXMvbGlzdHMvcnVieS1jb3JlLm1sLnJ1YnktbGFuZy5vcmcv