How can I use regular expressions for string matching in HTL | Community
Skip to main content
jkpanera
Level 4
May 13, 2019 6:10 PM UTC
Solved

How can I use regular expressions for string matching in HTL

How can I match a string against a regular expression in HTL?

I would want to do one thing if it matches and another if it doesn't.

Alternatively, if HTL does not have that capability built in, is there a way that I can pass a string into a utility method to do that?

Thanks!

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
arunpatidar
arunpatidarAccepted solution
New Participant
May 14, 2019 11:46 AM UTC

Not with HTL but with Java(Sling Model).

Use HTL templates(not page template) to render HTML based on condition.

Arun Patidar

6 replies

arunpatidar
arunpatidarAccepted solution
New Participant
May 14, 2019 11:46 AM UTC

Not with HTL but with Java(Sling Model).

Use HTL templates(not page template) to render HTML based on condition.

Translate
Arun Patidar
jkpanera
jkpaneraAuthor
Level 4
May 13, 2019 7:02 PM UTC

I do mean in the component code (not in a page template).

Let me give you a use case. We have some templates that handle certain image display for various AEM models. These components should generate different markup depending on the type of image (for example, we want to lazy load PNGs but not JPGs).

Is this possible to do using HTL?

Translate
arunpatidar
New Participant
May 13, 2019 7:02 PM UTC

Hi,

with HTL alone you can't do regex matching. You need to use JAVA i.e. Sling Model or WCMUsePojo.

and yes you can pass a parameter from HTL to Java. Please check below:

HTL introduction part 4

You can call sling model in template code as well.

Translate
Arun Patidar
smacdonald2008
Level 10
May 13, 2019 6:49 PM UTC

When you say Template - do you mean the component code?

Anyhow - if you want to perform this task in the HTL itself (I would recommend Java and Sling Models and use HTL as a view), - see:

htl-spec/SPECIFICATION.md at master · adobe/htl-spec · GitHub

Translate
jkpanera
jkpaneraAuthor
Level 4
May 13, 2019 6:46 PM UTC

What if I don't have a sling model in the HTL where I need the reg ex functionality? For example in a template?

Translate
smacdonald2008
Level 10
May 13, 2019 6:12 PM UTC

If you use a Sling Models with your HTL - you can use Java to perform all REG EX functionality.

Translate