1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
use crateParser;
use env;
/// Tagparser CLI tool
///
/// This command-line tool allows you to extract HTML tags from HTML content
/// and filter them by attributes.
///
/// # Usage
///
/// ```bash
/// # Basic usage - extract all tags of a specific type
/// tagparser "<html>...</html>" "a"
///
/// # Filter by attribute - extract all tags with a specific attribute
/// tagparser "<html>...</html>" "a" "href"
///
/// # Filter by attribute value - extract tags with a specific attribute value
/// tagparser "<html>...</html>" "a" "href" "https://github.com"
///
/// # Extract content - extract only the text content inside tags
/// tagparser "<html>...</html>" "a" "--content"
///
/// # Extract attribute values - extract values of a specific attribute
/// tagparser "<html>...</html>" "a" "href" "--attr-values"
/// ```
///
/// # Examples
///
/// 1. Extract all links:
/// ```bash
/// tagparser "<a href='https://example.com'>Link</a>" "a"
/// ```
/// Output: `["<a href='https://example.com'>Link</a>"]`
///
/// 2. Extract all links with class attribute:
/// ```bash
/// tagparser "<a href='https://example.com'>Link</a><a class='button' href='#'>Button</a>" "a" "class"
/// ```
/// Output: `["<a class='button' href='#'>Button</a>"]`
///
/// 3. Extract all links with specific class value:
/// ```bash
/// tagparser "<a class='button'>Button 1</a><a class='link'>Link</a>" "a" "class" "button"
/// ```
/// Output: `["<a class='button'>Button 1</a>"]`
///
/// 4. Extract text content from links:
/// ```bash
/// tagparser "<a href='https://example.com'>Example</a><a href='#'>Home</a>" "a" "--content"
/// ```
/// Output: `["Example", "Home"]`
///
/// 5. Extract href values from links:
/// ```bash
/// tagparser "<a href='https://example.com'>Example</a><a href='https://github.com'>GitHub</a>" "a" "href" "--attr-values"
/// ```
/// Output: `["https://example.com", "https://github.com"]`