[regex] Match line break with regular expression

<li><a href="#">Animal and Plant Health Inspection Service Permits
    Provides information on the various permits that the Animal and Plant Health Inspection Service issues as well as online access for acquiring those permits.

I want to use a regular expression to insert </a> at the end of Permits. It just so happens that all of my similiar blocks of html/text already have a line break in them. I believe I need to find a line break \n where the line contains(or starts with) <li><a href="#">.

This question is related to regex

The answer is


You could search for:

<li><a href="#">[^\n]+

And replace with:

$0</a>

Where $0 is the whole match. The exact semantics will depend on the language are you using though.


WARNING: You should avoid parsing HTML with regex. Here's why.


By default . (any character) does not match newline characters.

This means you can simply match zero or more of any character then append the end tag.

Find: <li><a href="#">.* Replace: $0</a>