How can we get all tags that match a prefix such as Event.Alpha (which should return Event.Alpha.Start and Event.Alpha.Finish) using C++?
How can we get all tags which contain an arbitrary part such as Start (which should return Event.Alpha.Start, Event.Beta.Start and Timer.Start.Zero but NOTRole.Starter)?
These only work with gameplay tags. Component and actor tags are simple FName fields it seems. I was using AActor::GetComponentsByTag which works with the old tagging system, not the newer gameplay tags.
I was hoping there was an automatic way but it seems that it has to be done manually. The first thing that comes to mind is something like:
TArray<FName> MatchingTags = ComponentTags.Filter([](const FName& Tag){/*Code that returns true if desired substring exists*/});
Extending it to gameplay tags you can do something like:
ah sorry didnt realize you were using the old system, yeah you can convert them but probably easier to use an interface to GetGameplayTags or something.
otherwise you convert the FName to String and then do something like