text_parser 0.0.4 copy "text_parser: ^0.0.4" to clipboard
text_parser: ^0.0.4 copied to clipboard

outdated

A Dart package for parsing text flexibly according to preset or custom regular expression patterns.

example/main.dart

import 'package:text_parser/text_parser.dart';

Future<void> main() async {
  const text = 'abc https://example.com/sample.jpg. def\n'
      'foo@example.com 911 +1-012-3456-7890\n'
      '01111111111 tel:02222222222'
      'abcde[foo](bar)fghij';

  // Uses preset matchers
  final parser = TextParser();
  var elements = await parser.parse(text);
  elements.forEach(print);

  print('-' * 20);

  // Extracts phone number elements from the parsed result
  final telNumbers = elements.where((elm) => elm.matcherType == TelMatcher);
  telNumbers.forEach(print);

  print('-' * 20);

  // Replaces already set matchers with new ones
  parser.matchers = const [
    TelMatcher(r'(?<=tel:)\d{11}'),
    MdLinkMatcher(),
  ];
  elements = await parser.parse(text);
  elements.forEach(print);

  print('-' * 20);

  // Obtains only matching elements
  elements = await parser.parse(text, onlyMatches: true);
  elements.forEach(print);
}

class MdLinkMatcher extends TextMatcher {
  const MdLinkMatcher() : super(r'\[(.+?)\]\((.+?)\)');
}
8
likes
0
pub points
61%
popularity

Publisher

verified publisherkaboc.cc

A Dart package for parsing text flexibly according to preset or custom regular expression patterns.

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

meta

More

Packages that depend on text_parser