ansiRegex function

RegExp ansiRegex({
  1. bool multiLine = false,
})

Regular expression for matching ANSI escape codes

Support multiLine parameter.

Implementation

RegExp ansiRegex({bool multiLine = false}) {
  return RegExp(
    [
      '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
      '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))'
    ].join('|'),
    multiLine: multiLine,
  );
}