Skip to main content
Solved

Extract/filter unchecked items from a rich text field


Forum|alt.badge.img+10

Every day I update all of my clients on the items I need from them so I can keep their projects on track. Having separate records for every single subtask is overkill so a single record is the parent record and I use the rich text check boxes “”/“” to keep track of the subtasks.

For example:

As the clients completes subtasks, I manually draft up an email or text with what is still needed.

So I’m looking for a way to filter out subtask #2 and only leave me with:

  • Subtask 1
  • Subtask 3

Any ideas?

Best answer by TheTimeSavingCo

Hmm, you could potentially try to do this via regex maybe, resulting in the following:

And from there you could manipulate it further for your email?

Link to base

And here’s the formula:

SUBSTITUTE(
  REGEX_REPLACE(
    Notes,
    ".+([x].+)",
    ''
  ),
  '\n\n',
  '\n'
)
View original
Did this topic help you find an answer to your question?

3 replies

Forum|alt.badge.img+13

Airtable does not give us a way to split apart data from a field within a formula, so you will not be able to do this as an automatic feature within your table. However, it should be possible to make this happen using a script (or a script action within an automation).

The basic algorithm will be to split the contents of the tich text field on the line break character, check each row for a filled checkbox character and then re-join only the rows that do not have the filled checkbox character. You could maintain a second field (perhaps called “filtered summary”) where the script/automation outputs the filtered rich text.

EDIT: years later and I still forget about those regex functions! @Adam_TheTimeSavingCo’s solution is super clever!


TheTimeSavingCo
Forum|alt.badge.img+28

Hmm, you could potentially try to do this via regex maybe, resulting in the following:

And from there you could manipulate it further for your email?

Link to base

And here’s the formula:

SUBSTITUTE(
  REGEX_REPLACE(
    Notes,
    ".+([x].+)",
    ''
  ),
  '\n\n',
  '\n'
)

Forum|alt.badge.img+10
  • Author
  • New Participant
  • 4 replies
  • December 19, 2022
TheTimeSavingCo wrote:

Hmm, you could potentially try to do this via regex maybe, resulting in the following:

And from there you could manipulate it further for your email?

Link to base

And here’s the formula:

SUBSTITUTE(
  REGEX_REPLACE(
    Notes,
    ".+([x].+)",
    ''
  ),
  '\n\n',
  '\n'
)

Perfect! This is exactly what I needed. Thank you Adam!


Reply