Esempio n. 1
0
    def __init__(
        self,
        pattern: Union[str, "vbml.Pattern", Iterable[Union[str,
                                                           "vbml.Pattern"]]],
        patcher: Optional["vbml.Patcher"] = None,
        flags: Optional[re.RegexFlag] = None,
    ):
        flags = flags or self.config.get("vbml_flags") or (re.MULTILINE
                                                           | re.DOTALL)

        if isinstance(pattern, str):
            pattern = [
                vbml.Pattern(pattern,
                             flags=flags or self.config.get("vbml_flags"))
            ]
        elif isinstance(pattern, vbml.Pattern):
            pattern = [pattern]
        elif isinstance(pattern, Iterable):
            pattern = [
                p if isinstance(p, vbml.Pattern) else vbml.Pattern(p,
                                                                   flags=flags)
                for p in pattern
            ]

        self.patterns = pattern
        self.patcher = patcher or self.config.get(
            "vbml_patcher") or vbml.Patcher()
Esempio n. 2
0
    def __init__(
        self,
        pattern: typing.Union[str, "vbml.Pattern",
                              typing.List[typing.Union[str, "vbml.Pattern"]]],
        patcher: typing.Optional["vbml.Patcher"] = None,
        flags: typing.Optional[re.RegexFlag] = None,
    ):
        flags = flags or self.config.get("vbml_flags")

        if isinstance(pattern, str):
            pattern = [
                vbml.Pattern(pattern,
                             flags=flags or self.config.get("vbml_flags"))
            ]
        elif isinstance(pattern, vbml.Pattern):
            pattern = [pattern]
        elif isinstance(pattern, list):
            pattern = [
                p if isinstance(p, vbml.Pattern) else vbml.Pattern(
                    p, flags=flags or self.config.get("vbml_flags"))
                for p in pattern
            ]

        self.patterns = pattern
        self.patcher = patcher or self.config["vbml_patcher"]
Esempio n. 3
0
 def __init__(
     self,
     pattern: Union[str, "vbml.Pattern", List[Union[str, "vbml.Pattern"]]],
     ignore_case: bool = False,
 ):
     if isinstance(pattern, str):
         pattern = [
             vbml.Pattern(pattern,
                          flags=re.IGNORECASE if ignore_case else None)
         ]
     elif isinstance(pattern, vbml.Pattern):
         pattern = [pattern]
     elif isinstance(pattern, list):
         pattern = [
             p if isinstance(p, vbml.Pattern) else vbml.Pattern(
                 p, flags=re.IGNORECASE if ignore_case else None)
             for p in pattern
         ]
     self.patterns = pattern
Esempio n. 4
0
    def __init__(
        self,
        pattern: typing.Union["vbml.Pattern", str],
        patcher: typing.Optional["vbml.Patcher"] = None,
    ):
        if vbml is None:
            raise RuntimeError("you have to install vbml - pip install vbml")

        self.patcher: vbml.Patcher = patcher or vbml.Patcher()

        if isinstance(pattern, str):
            self.pattern = vbml.Pattern(pattern)
        elif isinstance(pattern, vbml.Pattern):
            self.pattern = pattern
Esempio n. 5
0
    def __init__(self,
                 pattern: Union[str, List[str]],
                 patcher: Optional[vbml.Patcher] = None,
                 flags: Optional[re.RegexFlag] = None) -> None:

        if isinstance(pattern, str):
            _patterns = [pattern]
        elif isinstance(pattern, list):
            _patterns = pattern
        else:
            _patterns = list(pattern)

        self._patterns = [vbml.Pattern(i, flags=flags) for i in _patterns]

        if patcher is not None:
            self._patcher = patcher