I have a file of dictionary, here is a part of it:
amends
[m0][b]{{MAINENTRY}}amends{{/MAINENTRY}}[/b] [p]UK[/p] [s]zzz_uk_B_B01_B0107_B0107310.wav[/s] [c teal]\[{{PRON}}əˈmendz{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A01_A0107_A0107310.wav[/s] [c orange]{{PART-OF-SPEECH}}noun{{/PART-OF-SPEECH}}[/c]
{{Phrase}}[m3][c darkslategray][u]Phrase:[/u][/c] <<make amends>>{{/Phrase}}
amenity
[m0][b]{{MAINENTRY}}amenity{{/MAINENTRY}}[/b] [p]UK[/p] [s]zzz_uk_B_B01_B0107_B0107410.wav[/s] [c teal]\[{{PRON}}əˈmiːnəti{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A01_A0107_A0107410.wav[/s] [c teal]\[{{PRON}}əˈmenəti{{/PRON}}\][/c] [c orange]{{PART-OF-SPEECH}}noun{{/PART-OF-SPEECH}}[/c] [c sienna]{{SYNTAX-CODING}}\[countable\]{{/SYNTAX-CODING}}[/c] [c orangered]{{RESTRICTION-CLASS}}usually plural{{/RESTRICTION-CLASS}}[/c] {{INFLECTION}}[c rosybrown]\[[/c][c rosybrown][i]{{INFLECTION-TYPE}}singular{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}amenity{{/INFLECTION-ENTRY}}[/c] [c rosybrown][i]{{INFLECTION-TYPE}}plural{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}amenities{{/INFLECTION-ENTRY}}[/c][c rosybrown]\][/c]{{/INFLECTION}}
[m1]{{DEFINITION}}something that makes it comfortable or enjoyable to live or work somewhere{{/DEFINITION}}
[m3][ex][*]{{EXAMPLE}}Amenities include a gym, a pool, and a jacuzzi.{{/EXAMPLE}}[/*][/ex]
[m3][ex][*]{{EXAMPLE}}parks, shops, and other local amenities{{/EXAMPLE}}[/*][/ex]
{{Thesaurus}}[m3][c darkslategray][u]Thesaurus:[/u][/c] [ref dict="Macmillan English Thesaurus (En-En)"]things that make life easier or more comfortable[/ref][sub][c rosybrown]synonym[/c][/sub] {{/Thesaurus}}
amenorrhoea
[m0][b]{{MAINENTRY}}amenorrhoea{{/MAINENTRY}}[/b] [p]UK[/p] [s]zzz_uk_B_B_1_B_142_B-142644-amenorrhoea.wav[/s] [c teal]\[{{PRON}}ˌeɪmenəˈriə{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A_1_A_158_A-158741-amenorrhoea.wav[/s] [c orange]{{PART-OF-SPEECH}}noun{{/PART-OF-SPEECH}}[/c] [c sienna]{{SYNTAX-CODING}}\[uncountable\]{{/SYNTAX-CODING}}[/c] [c darkgreen]{{SUBJECT-AREA}}medical{{/SUBJECT-AREA}}[/c]
[m1]{{DEFINITION}}a medical condition in which a woman who is not pregnant does not{{/DEFINITION}} [i]{{NDV}}menstruate{{/NDV}}[/i] {{DEFINITION}}{{/DEFINITION}} [c darkslategray](={{GL}}produce a flow of blood once a month{{/GL}})[/c]
{{Thesaurus}}[m3][c darkslategray][u]Thesaurus:[/u][/c] [ref dict="Macmillan English Thesaurus (En-En)"]menstruation and the menstrual cycle[/ref][sub][c rosybrown]hyponym[/c][/sub] [ref dict="Macmillan English Thesaurus (En-En)"]specific medical conditions[/ref][sub][c rosybrown]hyponym[/c][/sub] {{/Thesaurus}}
americano
[m0][b]{{MAINENTRY}}americano{{/MAINENTRY}}[/b] [p]UK[/p] [s]zzz_uk_B_B43_B4343_B4343010.wav[/s] [c teal]\[{{PRON}}əˌmerɪˈkɑːnəʊ{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A43_A4343_A4343010.wav[/s] [c teal]\[{{PRON}}əˌmerɪˈkɑnoʊ{{/PRON}}\][/c] [c orange]{{PART-OF-SPEECH}}noun{{/PART-OF-SPEECH}}[/c] [c sienna]{{SYNTAX-CODING}}\[countable\]{{/SYNTAX-CODING}}[/c] {{INFLECTION}}[c rosybrown]\[[/c][c rosybrown][i]{{INFLECTION-TYPE}}singular{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}americano{{/INFLECTION-ENTRY}}[/c] [c rosybrown][i]{{INFLECTION-TYPE}}plural{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}americanos{{/INFLECTION-ENTRY}}[/c][c rosybrown]\][/c]{{/INFLECTION}}
[m1]{{DEFINITION}}a cup of coffee made by pouring a little{{/DEFINITION}} [i]{{NDV}}espresso{{/NDV}}[/i] {{DEFINITION}}{{/DEFINITION}} [c darkslategray](={{GL}}strong Italian coffee{{/GL}})[/c] {{DEFINITION}}on top of hot water{{/DEFINITION}}
{{Thesaurus}}[m3][c darkslategray][u]Thesaurus:[/u][/c] [ref dict="Macmillan English Thesaurus (En-En)"]non-alcoholic drinks[/ref][sub][c rosybrown]hyponym[/c][/sub] [ref dict="Macmillan English Thesaurus (En-En)"]general words for drinks[/ref][sub][c rosybrown]synonym[/c][/sub] {{/Thesaurus}}
amethyst
[m0][b][c darkmagenta]▪ [u]I.[/u][/c][/b] [b]{{MAINENTRY}}amethyst{{/MAINENTRY}}[/b] [sup]{{HOMO-NUM}}1{{/HOMO-NUM}}[/sup] [p]UK[/p] [s]zzz_uk_B_B01_B0108_B0108610.wav[/s] [c teal]\[{{PRON}}ˈæməθɪst{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A01_A0108_A0108610.wav[/s] [c orange]{{PART-OF-SPEECH}}noun{{/PART-OF-SPEECH}}[/c] [c sienna]{{SYNTAX-CODING}}\[countable/uncountable\]{{/SYNTAX-CODING}}[/c] {{INFLECTION}}[c rosybrown]\[[/c][c rosybrown][i]{{INFLECTION-TYPE}}singular{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}amethyst{{/INFLECTION-ENTRY}}[/c] [c rosybrown][i]{{INFLECTION-TYPE}}plural{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}amethysts{{/INFLECTION-ENTRY}}[/c][c rosybrown]\][/c]{{/INFLECTION}}
[m2]{{DEFINITION}}a valuable purple stone that is used in jewellery{{/DEFINITION}}
{{Thesaurus}}[m4][c darkslategray][u]Thesaurus:[/u][/c] [ref dict="Macmillan English Thesaurus (En-En)"]stones used in jewellery[/ref][sub][c rosybrown]hyponym[/c][/sub] {{/Thesaurus}}
[m0] [m0][b][c darkmagenta]▪ [u]II.[/u][/c][/b] [b]{{MAINENTRY}}amethyst{{/MAINENTRY}}[/b] [sup]{{HOMO-NUM}}2{{/HOMO-NUM}}[/sup] [p]UK[/p] [s]zzz_uk_B_B01_B0108_B0108620.wav[/s] [c teal]\[{{PRON}}ˈæməθɪst{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A01_A0108_A0108620.wav[/s] [c orange]{{PART-OF-SPEECH}}adjective{{/PART-OF-SPEECH}}[/c]
[m2]{{DEFINITION}}light purple{{/DEFINITION}}
{{Thesaurus}}[m4][c darkslategray][u]Thesaurus:[/u][/c] [ref dict="Macmillan English Thesaurus (En-En)"]words used to describe specific colours[/ref][sub][c rosybrown]hyponym[/c][/sub] {{/Thesaurus}}
I need by a given word to extract a part of dictionary page using regex. For example, input of word "amenity" should return:
amenity
[m0][b]{{MAINENTRY}}amenity{{/MAINENTRY}}[/b] [p]UK[/p] [s]zzz_uk_B_B01_B0107_B0107410.wav[/s] [c teal]\[{{PRON}}əˈmiːnəti{{/PRON}}\][/c] [p]US[/p] [s]zzz_us_A_A01_A0107_A0107410.wav[/s] [c teal]\[{{PRON}}əˈmenəti{{/PRON}}\][/c] [c orange]{{PART-OF-SPEECH}}noun{{/PART-OF-SPEECH}}[/c] [c sienna]{{SYNTAX-CODING}}\[countable\]{{/SYNTAX-CODING}}[/c] [c orangered]{{RESTRICTION-CLASS}}usually plural{{/RESTRICTION-CLASS}}[/c] {{INFLECTION}}[c rosybrown]\[[/c][c rosybrown][i]{{INFLECTION-TYPE}}singular{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}amenity{{/INFLECTION-ENTRY}}[/c] [c rosybrown][i]{{INFLECTION-TYPE}}plural{{/INFLECTION-TYPE}}[/i][/c] [c darkslategray]{{INFLECTION-ENTRY}}amenities{{/INFLECTION-ENTRY}}[/c][c rosybrown]\][/c]{{/INFLECTION}}
[m1]{{DEFINITION}}something that makes it comfortable or enjoyable to live or work somewhere{{/DEFINITION}}
[m3][ex][*]{{EXAMPLE}}Amenities include a gym, a pool, and a jacuzzi.{{/EXAMPLE}}[/*][/ex]
[m3][ex][*]{{EXAMPLE}}parks, shops, and other local amenities{{/EXAMPLE}}[/*][/ex]
{{Thesaurus}}[m3][c darkslategray][u]Thesaurus:[/u][/c] [ref dict="Macmillan English Thesaurus (En-En)"]things that make life easier or more comfortable[/ref][sub][c rosybrown]synonym[/c][/sub] {{/Thesaurus}}
But the problem is I can't even match the single "amenity" at the beginning. I tried:
try (var t = new Scanner(Path.of("C:\\Users\\User\\Desktop\\temp.txt"), StandardCharsets.UTF_8)) {
Stream<MatchResult> res = t.findAll(Pattern.compile("^amenity$"));
res.forEach(x -> System.out.println(x.group()));
} catch (IOException e) {
throw new RuntimeException(e);
}
And the resulting stream is empty
Question:
- How to match single "amenity" at the beginning of expected result
- How to match the whole page by given word