Translate

New Live Courses

🚀 *Gen AI Engineer Telugu (Production Focused)*
🗓️ *Date:* 30th Sept 2026, 07:00AM IST
📝 *Register Now!:*
https://www.vlrt.in/gr
👥 *Join WA Community:*
https://www.vlrt.in/gw
💡*Course Content:*
https://www.vlrt.in/ai
▶️ *Demo Videos:*
https://www.vlrt.in/gv

🚀 *Service now Admin/ Development (ITSM)FREE Demo in Telugu*
🗓️ *Date:* 30th Sept 2026, 08:00AM IST
📝 *Register Now!:*
https://www.vlrt.in/7r
👥 *Join WA Community:*
https://www.vlrt.in/7w
💡*Course Content:*
https://www.vlrt.in/7c
▶️ *Demo Videos:*
https://www.vlrt.in/7v

🚀 *Vulnerability Management Training Demo*
🗓️ *Date:* 30th Sept 2026, 09:00 AM IST
📝*Register Now!:*
https://www.vlrt.in/vr
👥 *Join Community:*
https://www.vlrt.in/cw
💡 *Course Content:*
https://www.vlrt.in/vc
▶️ *Demo Videos:*
https://www.vlrt.in/Vm

Tuesday, 12 March 2024

How to check if the given string a palindrome? in MuleSoft113

 How to check if the given string a palindrome? in MuleSoft


Here's how to check if a given string is a palindrome in MuleSoft using DataWeave:

1. Function Approach:

This method involves creating a reusable function to perform the palindrome check.



%dw 2.0
fun isPalindrome(text: String): Boolean {
  // Remove non-alphanumeric characters and convert to lowercase
  var cleanText = text.replace(/[^\w\s]/g, "").toLowerCase()
  // Check if the reversed string is equal to the original string (ignoring whitespaces)
  cleanText == cleanText.reverse().replace(/\s/g, "")
}

---
output = isPalindrome("race car") // returns true

Explanation:

  • The isPalindrome function takes a string as input (text).

  • It removes non-alphanumeric characters using a regular expression (/[^\w\s]/g) and converts the text to lowercase for case-insensitive comparison.

  • The function then checks if the reversed string (cleanText.reverse()) is equal to the original cleaned string after removing whitespaces (replace(/\s/g, "")).

  • The function returns true if it's a palindrome, false otherwise.

2. Inline Expression:

For a one-time check, you can use a DataWeave expression directly within your flow.



%dw 2.0
---
message.payload == message.payload.reverse().replace(/\s/g, "")

Explanation:

  • This expression compares the original payload string with its reversed version after removing whitespaces.

  • It directly evaluates to true if it's a palindrome, false otherwise.

Choosing the Right Approach:

  • Function: This approach is preferred for reusability, especially if you need to perform the palindrome check in multiple places within your Mule application.

  • Inline expression: This method is suitable for simple, one-time checks where creating a separate function might be overkill.

Additional Notes:

  • You can modify the regular expression in the function to handle specific requirements, like including punctuation or spaces in the palindrome check.

  • Error handling can be incorporated to gracefully handle situations where the input might not be a string.

No comments:

Post a Comment

Note: only a member of this blog may post a comment.