Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Parser does not consider dot as a wildcard character

SA-56947

Summary



Smart Investigate (SI) on Pega 5 platform is upgraded to Smart Investigate 7.1.1 on Pega 7.2.2.
After the upgrade, Swift Message parsing does not work correctly.

In PRPC 5.1, the system treated the dot (.) as a wildcard character in the Normalization process. However, in Pega 7.2, the dot is considered as a literal string. 
In PRPC 5.1, Parse Normalize with text 'Look for' V.D. and parses strings such as 'V#D7, VIDE, and VADU', and replaces this text with the String provided.

However, in Pega 7 platform, the parser does not consider the dot as a wildcard character. Therefore, these strings are not parsed.



Error Messages



Not Applicable


Steps to Reproduce



In Smart Investigate 7.11, run the ValDate Parse Normalize rule.




Root Cause



This is not a defect in Smart Investigate 7.1.1 with Pega 7.2.2, but a defect in PRPC 5 and Pega 6 platforms in which the dot was treated as a wildcard in the Parse Normalization process. The dot must be treated as a literal string character. This works correctly from Pega 7.1.

Consequently, this change affected Smart Investigate's Swift message processing that contains the dot character in Pega 7.1, because the Value Date reference searches for V.D. and replaces it with VALDATE.



Resolution



Perform the below local-change, to enable Smart Investigate 7 to parse the dot as a wildcard: Add Property-Set after the Text-Normalize step for ValDate Parse-Normalize rule in the activity where ValDate is referenced in Text-Normalize step. Out-of-the-box, in the Smart Investigate application, the ValDate property is normalized in the PegaSI-.DoGetReferences_parse activity.



The PropertiesValue reads as,

@String.pxReplaceAllViaRegex(.pyDescription,"\\b(V.{1}D.{1})\\b","~VALDATE~")

The regular expression searches for a whole word *only*  and replaces it with ~VALDATE~.

If the  requirement is to find substrings in a sentence, replace the regular expression with the following:

@String.pxReplaceAllViaRegex(.pyDescription,"(V.{1}D.{1})","~VALDATE~")


 
Suggest Edit

Published October 17, 2018 - Updated December 2, 2021

Did you find this content helpful? Yes No

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us