This week's sponsor


Clean Up Your Inbox Today (and Keep It That Way Forever)

Matching URLs In Editorial with John Gruber’s Regex Pattern

Editorial for iPad

Editorial for iPad

When I'm writing in Editorial, I often need to make sure I'm dealing with a valid URL in the system clipboard, the document editor, or in a variable. To do so, I've long employed John Gruber's liberal, accurate regex pattern for matching URLs, which has reliably allowed me to confirm that a workflow is about to handle a proper URL rather than a string of text that contains something else. Gruber recently improved the regex pattern again, and that seemed like a good opportunity to briefly detail how I've integrated his pattern in my workflows.

The key to match URLs and provide error-handling features in Editorial is to use a conditional block based on a regular expression pattern. Editorial comes with this functionality built-in: given a regex pattern, a block of actions can be run only if a value (plain text or variable) matches the pattern. In this way, you can run a set of actions if you have a URL, and another set if you don't have a valid URL.

I've created a simple workflow that can be installed and reused as a preset in other workflows. The workflow, called Match and Open URL, consists of a single If block that checks for a URL contained in the clipboard. If you have a URL that matches Gruber's pattern, the URL will be extracted from the clipboard and launched in the browser; if you don't have a URL…it's up to you to provide an alternative.

Editorial makes it extremely easy to build this kind of advanced workflow with just a few built-in actions. Gruber's single-line version of the regex pattern can be pasted in Editorial's If action with no modifications; inside the If block, the text in the clipboard is passed to a Find action that extracts a URL using the same, untouched single-line regex pattern. The extracted URL is opened in the browser and a HUD alert is displayed.

Combining Gruber's regex pattern and Editorial's workflow system can yield interesting results. You could use a variable instead of the system clipboard to match URLs; you could implement the pattern in a Repeat block that performs a set of actions for every matched URL found in the target text; instead of having my workflow inside an If block, you could match a URL among other bits of text, extract it, and do something with it. Editorial is a text automation playground and your imagination's the limit.

You can download the workflow on Editorial Workflows' website, and check out John Gruber's regex pattern here.

Note: The screenshot above shows a beta version of Editorial, currently in testing.

Unlock MacStories Extras

Club MacStories offers exclusive access to extra MacStories content, delivered every week; it’s also a way to support us directly.

Club MacStories will help you discover the best apps for your devices and get the most out of your iPhone, iPad, and Mac. Plus, it’s made in Italy.

Starting at $5/month, with an annual option available. Join the Club.

A Club MacStories membership includes:

  • MacStories Weekly newsletter, delivered every week on Friday with app collections, tips, iOS workflows, and more;
  • Monthly Log newsletter, delivered once every month with behind-the-scenes stories, app notes, personal journals, and more;
  • Access to occasional giveaways, discounts, and free downloads.