MCPcopy Create free account
hub / github.com/mitmproxy/mitmproxy / split_special_areas

Function split_special_areas

mitmproxy/utils/strutils.py:217–233  ·  view source on GitHub ↗

Split a string of code into a [code, special area, code, special area, ..., code] list. For example, >>> split_special_areas( >>> "test /* don't modify me */ foo", >>> [r"/\\*[\\s\\S]*?\\*/"]) # (regex matching comments) ["test ", "/* don't modify me */", " foo"]

(
    data: str,
    area_delimiter: Iterable[str],
)

Source from the content-addressed store, hash-verified

215
216
217def split_special_areas(
218 data: str,
219 area_delimiter: Iterable[str],
220):
221 """
222 Split a string of code into a [code, special area, code, special area, ..., code] list.
223
224 For example,
225
226 >>> split_special_areas(
227 >>> "test /* don't modify me */ foo",
228 >>> [r"/\\*[\\s\\S]*?\\*/"]) # (regex matching comments)
229 ["test ", "/* don't modify me */", " foo"]
230
231 "".join(split_special_areas(x, ...)) == x always holds true.
232 """
233 return re.split("({})".format("|".join(area_delimiter)), data, flags=re.MULTILINE)
234
235
236def escape_special_areas(

Callers 1

escape_special_areasFunction · 0.85

Calls 3

formatMethod · 0.80
splitMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…