Multiple regex filters for parsing

Hello everyone,

I am parsing a URL and using multiple regex filters (2 in the given example, will be 4-7 in production) to insert data to Google Sheets. This scenario gets the job done but I am wondering if I can increase the efficiency on the number of ops that are used as the plan is to update over 1,000 rows. Screenshot below:

I am trying to figure out some best practices. Thanks!

It all depends what the scenario is doing, and what you’re matching. Unfortunately you haven’t given us much to go on.

When reaching out for assistance with your regex pattern for a Text Parser module, it would be super helpful if you could share the actual text you’re trying to match. Screenshots of text can be a bit tricky, so if you could copy and paste the text directly here, that would be awesome! It ensures we can run it against test patterns effectively. If there’s any sensitive info, feel free to change it to something fictional yet still valid by keeping the format intact.

Providing clear text examples saves time on both ends and helps us give you the best possible solution. Without proper examples, we might end up playing a guessing game, and nobody wants that as it is a waste of time! You are more likely to get a correct answer faster. So, help us help you by sharing those text snippets. Thanks a bunch!

If you need further assistance, please provide the following:

1. Screenshots of module fields and filters

Please share screenshots of relevant module fields and filters in question? It would really help other community members to see what you’re looking at.

You can upload images here using the Upload icon in the text editor:
Screenshot_2023-10-07_111039

2. Scenario blueprint

Please export the scenario blueprint file to allow others to view the mappings and settings. At the bottom of the scenario editor, you can click on the three dots to find the Export Blueprint menu item.

Screenshot_2023-08-24_230826
(Note: Exporting your scenario will not include private information or keys to your connections)

Uploading it here will look like this:

blueprint.json (12.3 KB)

3. And most importantly, Input/Output bundles

Please provide the input and output bundles of the modules by running the scenario (or get from the scenario History tab), then click the white speech bubble on the top-right of each module and select “Download input/output bundles”.
Screenshot_2023-10-06_141025

A.

Save each bundle contents in your text editor as a bundle.txt file, and upload it here into this discussion thread.

Uploading them here will look like this:

module-1-input-bundle.txt (12.3 KB)
module-1-output-bundle.txt (12.3 KB)

B.

If you are unable to upload files on this forum, alternatively you can paste the formatted bundles in this manner:

  • Either add three backticks ``` before and after the code, like this:

    ```
    input/output bundle content goes here
    ```

  • Or use the format code button in the editor:
    Screenshot_2023-10-02_191027

Providing the input/output bundles will allow others to replicate what is going on in the scenario even if they do not use the external service.

Following these steps will allow others to assist you here. Thanks!

samliew – request private consultation

Join the unofficial Make Discord server to chat with other makers!

1 Like

Sorry for the lack of context. The blueprint is not available due to internal data. The workflow is as follows:

Step 1: Get URL from Google Sheets
Step 2: Make an HTTP call
Step 3: Parse data using multiple regex patterns to scrape information such as company name, tax ID, phone number, email address, company address
Step 4: Update rows using data from step 3

Between step 2 and 3 I am using Router to be able to execute multiple regex patterns.

This leads to 5 regex patterns ending with 5 Google Sheets update row modules. 10 extra operations per company.

Is there a way I can increase the ops efficiency here?

You can probably use an array aggregator module so that you only Update a single row for all the five columns at the same time, using 6 ops instead of 14.

Or you can probably do away with the router and use a single Match Pattern module with “Global match” set to No, and a single Update a Row, using 4 ops instead of 14.

Without knowing what you are requesting or matching, I am unable to assist further.

samliew – request private consultation

Join the unofficial Make Discord server to chat with other makers!

1 Like

Welcome to the Make community!

I would suggest completing the Make Academy before jumping into building a complete scenario.

If you need specific assistance when you are building a scenario it’s easier to help you then.

Otherwise, you can also hire a professional by posting in the Professional Services category.

Here are some useful links and guides you can use to learn more on how to use the Make platform, apps, and app modules. I found these useful when I was learning Make, and hope they might benefit you too —

General

Help Center Basics

Articles & Videos

samliew – request private consultation

Join the unofficial Make Discord server to chat with other makers!

1 Like

Hey samliew,

I appreciate your help. In between I happened to find a workaround that was practically free in terms of ops usage.

I did HTML to text parsing on make.com, exported the output to Google Sheets and did all the regex extraction with the =REGEXEXTRACT formula in Google Sheets.

Wishing you a nice rest of your day.

2 Likes