@@ -31,6 +31,19 @@ class Log
3131{
3232 private $ sensitiveXmlTags = NULL ;
3333
34+ /**
35+ * Takes a regex pattern (string) as argument and adds the forward slash delimiter.
36+ * Also adds the u flag to enable Unicode mode regex.
37+ *
38+ * @param string $regexPattern
39+ *
40+ * @return string
41+ */
42+ private function addDelimiterFwdSlash ($ regexPattern )
43+ {
44+ return '/ ' .$ regexPattern .'/u ' ;
45+ }
46+
3447 /**
3548 * Takes an xml as string and masks the sensitive fields.
3649 *
@@ -50,7 +63,8 @@ private function maskSensitiveXmlString($rawString){
5063 if (trim ($ sensitiveTag ->pattern )) {
5164 $ inputPattern = $ sensitiveTag ->pattern ;
5265 }
53- $ pattern = "/< " . $ tag . ">(?:.*) " . $ inputPattern ."(?:.*)<\/ " . $ tag . ">/ " ;
66+ $ pattern = "< " . $ tag . ">(?:.*) " . $ inputPattern ."(?:.*)<\/ " . $ tag . "> " ;
67+ $ pattern = $ this ->addDelimiterFwdSlash ($ pattern );
5468
5569 if (trim ($ sensitiveTag ->replacement )) {
5670 $ inputReplacement = $ sensitiveTag ->replacement ;
@@ -76,15 +90,18 @@ private function maskCreditCards($rawString){
7690 $ replacements =array ();
7791
7892 foreach ($ this ->sensitiveStringRegexes as $ i => $ creditCardRegex ){
79- $ pattern = "/ " . $ creditCardRegex . "/ " ;
93+ $ pattern = $ creditCardRegex ;
94+ $ pattern = $ this ->addDelimiterFwdSlash ($ pattern );
8095
8196 $ replacement = "xxxx " ;
8297 $ patterns [$ i ] = $ pattern ;
8398 $ replacements [$ i ] = $ replacement ;
8499 }
85100 $ maskedString = preg_replace ($ patterns , $ replacements , $ rawString );
86101 return $ maskedString ;
87- }/**
102+ }
103+
104+ /**
88105 * Object data masking related functions START
89106 */
90107
@@ -133,7 +150,7 @@ private function checkPropertyAndMask($prop, $obj){
133150 if (trim ($ sensitiveField ->pattern )) {
134151 $ inputPattern = $ sensitiveField ->pattern ;
135152 }
136- $ inputPattern= ' / ' . $ inputPattern. ' / ' ;
153+ $ inputPattern = $ this -> addDelimiterFwdSlash ( $ inputPattern) ;
137154
138155 if (trim ($ sensitiveField ->replacement )) {
139156 $ inputReplacement = $ sensitiveField ->replacement ;
0 commit comments