@@ -454,9 +454,37 @@ def filter_keys(self, name, separator="||", parse_index="$", ordered_dict=False)
454454 JDKSObject .flatten (separator = separator , parse_index = parse_index , ordered_dict = ordered_dict )
455455 newJDKSObject = loads ("{}" , ordered_dict = ordered_dict )
456456
457- for k in JDKSObject .getObject ():
458- if re .search (name , k ):
459- newJDKSObject .set (k , JDKSObject .get (k , separator = "§§" + separator + "§§" , parse_index = "§§" + parse_index + "§§" ), separator = "§§" + separator + "§§" , parse_index = "§§" + parse_index + "§§" , ordered_dict = ordered_dict )
457+ for k , v in JDKSObject .getObject ().items ():
458+ if type (k ) == str and type (name ) == str :
459+ if re .search (name , k ):
460+ newJDKSObject .set (k , v , separator = "§§" + separator + "§§" , parse_index = "§§" + parse_index + "§§" , ordered_dict = ordered_dict )
461+ else :
462+ if name == k :
463+ newJDKSObject .set (k , v , separator = "§§" + separator + "§§" , parse_index = "§§" + parse_index + "§§" , ordered_dict = ordered_dict )
464+
465+ return newJDKSObject
466+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
467+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
468+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
469+
470+
471+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
472+ # # # # # # # # # # # # filter_values # # # # # # # # # # # # #
473+ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
474+ def filter_values (self , value , separator = "||" , parse_index = "$" , ordered_dict = False ):
475+ import re , copy
476+
477+ JDKSObject = copy .deepcopy (self )
478+ JDKSObject .flatten (separator = separator , parse_index = parse_index , ordered_dict = ordered_dict )
479+ newJDKSObject = loads ("{}" , ordered_dict = ordered_dict )
480+
481+ for k , v in JDKSObject .getObject ().items ():
482+ if type (v ) == str and type (value ) == str :
483+ if re .search (value , v ):
484+ newJDKSObject .set (k , v , separator = "§§" + separator + "§§" , parse_index = "§§" + parse_index + "§§" , ordered_dict = ordered_dict )
485+ else :
486+ if value == v :
487+ newJDKSObject .set (k , v , separator = "§§" + separator + "§§" , parse_index = "§§" + parse_index + "§§" , ordered_dict = ordered_dict )
460488
461489 return newJDKSObject
462490 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
0 commit comments