Using This RegEx Tool to Match HTML TagsWednesday, March 9, 2022
If you've dealt with text-based data before, you may be no stranger to how a messy dataset can make your life miserable. The fact that most of the world's data comes in nonstructural form is an ugly truth to be known sooner or later. In this post, we will talk about what RegEx (regular expression) is, what you can do with RegEx, and some specific examples.
What is a regular expression (RegEx)?
“A regular expression (sometimes called a rational expression) is a sequence of characters that define a search pattern, mainly for use in pattern matching with strings, or string matching, i.e. "find and replace"-like operations. The concept arose in the 1950s, when the American mathematician Stephen Kleene formalized the description of a regular language, and came into common use with the Unix text-processing utility ed (a line editor for the Unix operating system), an editor, and grep (a command-line utility for searching plain-text data sets for lines matching a regular expression), a filter (a computer program or subroutine to process a stream, producing another stream).” This is an excerpt from Wikipedia used to define the regular expression.
As obscure as it sounds, the concept is actually quite easy to understand. Say that you want to find a certain movie on Netflix, you'd probably search with the title of the Movie or even part of the title. Netflix's search engine would then go on to look for any movie with titles matching to what you've input into the search box and show you a list of search results that matches your search keywords. Likewise, regular expressions are like the words you've used to search for the movie that you want to find.
Essentially, regular expressions are text patterns that you can use to match elements or replace elements throughout strings of text. RegEx can be more powerful than you think because of how incredibly flexible it is for cleansing text-based data.
What you can do with RegEx?
In short, regular expressions can be used to match HTML tags and extract the data in HTML documents.
Common RegEx Use Cases
- Using RegEx to extract emails
- Using RegEx to extract phone numbers
- Refine extracted data (replace content, add a prefix, ..)
HTML is practically made up of strings, and what makes regular expression so powerful is, a regular expression can match different strings. Admittedly, using regular expressions for parsing HTML can often lead to mistakes like missing closing tags, mismatching some tags, etc. Programmers are more likely to use other HTML parsers like PHPQuery, BeautifulSoup, html5lib-Python, etc. However, if you want to quickly match HTML tags, you can use this incredibly convenient tool to identify patterns in HTML documents. Every programmer or anyone who wants to extract web data is strongly recommended to learn about regular expressions for how this tool is able to greatly improve work efficiency and productivity.
Let's look at a few examples of regular expressions to match HTML tags.
Regular expressions for matching HTML tags:
Regular expression to match all TD tags:
Regular expression to match <img src="test.gif"/>:
We can match a variety of HTML tags by using such a regular expression and therefore easily extract data in HTML documents.
Case 1: Using nearby characters to locate the text
If you want to get the rating information from the HTML below, you can use Octoparse's RegEx tool to match the elements by using nearby "Start with" and "End with" characters.
<div aria-label="Rated 4.3 stars out of five stars" role="img">
Case 2: Write RegEx to extract specific info (like email, websites, etc)
If you want to extract emails from the source code (especially for some URLs sharing different structures), you can use the RegEx below directly to match the email. You can test and debug your own regular expressions right away with the tool.
Author: Vanny W.