If you want to check if a string contains the same values as the other string but they aren't in the same order, you can load them to two sets and compare between them.
String str1 = 'Pay TV;AVOD;Basic TV';
String str2 = 'Basic TV;Pay TV;AVOD';
List<String> str1List = str1.split(';');
List<String> str2List = str2.split(';');
Set<String> str1Set = new Set<String>();
Set<String> str2Set = new Set<String>();
str1Set.addAll(str1List);
str2Set.addAll(str2List);
if(str1Set.equals(str2Set))
system.debug('true'); // result: true
else
system.debug('false');