Add regex parameter

This commit is contained in:
YishiMichael 2022-04-10 09:23:53 +08:00
parent e23f667c3d
commit 36d62ae1a3
No known key found for this signature in database
GPG key ID: EC615C0C5A86BC80

View file

@ -520,14 +520,17 @@ class LabelledString(_StringSVG):
])
def get_parts_by_string(
self, substr: str, case_sensitive: bool = True, **kwargs
self, substr: str,
case_sensitive: bool = True, regex: bool = False, **kwargs
) -> VGroup:
flags = 0
if not case_sensitive:
flags |= re.I
pattern = substr if regex else re.escape(substr)
return VGroup(*[
self.get_part_by_custom_span(span, **kwargs)
for span in self.find_substr(substr, flags=flags)
for span in self.find_spans(pattern, flags=flags)
if span[0] < span[1]
])
def get_part_by_string(