This goes into the direction where we want it to be very general, with parallels to features in existing languages like Python.
We want a have a short name that is not too specific
We want a name that is not too short or could conflict with potential keywords
We want something that would hopefully not need to be changed if we wanted to upgrade it to an actual language-level operator later on
We should also be careful about conflicts with other potential language features. For example, keywords like in or is could also potentially used for pattern matching operators:
x in (1 | 3 | 4)
x is Some(5)
To be clear, I'm just talking about similar semantic to the matches!() macro here. But I see a lot of similiarities between the (un)ergonomics of it and the .contains() (un)ergonomics that spawned this discussion. Though, looking at this, it seems unlikely that in would be end up as the best choice for this regardless.