http monitor receive string parsing
I am trying to setup on BigIp http monitor using regex in the receive string.
The receive string contains something like:
<s:key name="B29F4327-8F4D-45B7-B962-493BB6DC222C">
<s:dict>
<s:key name="label">saaa03</s:key>
<s:key name="mgmt_uri">https://saaa03.prod.com:8089</s:key>
<s:key name="mgmt_uri_alias">https://172.25.4.208:8089</s:key>
<s:key name="status">Up</s:key>
</s:dict>
</s:key>
<s:key name="E89A560F-7DFB-4C2F-9846-B8C77D623CF5">
<s:dict>
<s:key name="label">saaa02</s:key>
<s:key name="last_conf_replication">Wed Jan 11 14:15:07 2023</s:key>
<s:key name="mgmt_uri">https://saaa02.prod.com:8089</s:key>
<s:key name="mgmt_uri_alias">https://172.25.4.201:8089</s:key>
<s:key name="status">Up</s:key>
</s:dict>
</s:key>
</s:dict>
I am trying to match the two lines in bold using the following regex:
.*name\x3d\x22mgmt_uri_alias\x22>https:\x2f\x2f172\x2e25\x2e4\x2e201:8089<\x2fs:key>\n\s+<s:key\sname="status">Up<\/s:key>.*
This fails to match due to multi-line, the following regex matches:
.*name\x3d\x22mgmt_uri_alias\x22>https:\x2f\x2f172\x2e25\x2e4\x2e201:8089<\x2fs:key>.*
We’ve tried a number of combination to pass the multi-line issue:
\W+\s+
\r\n\s+
\n+\s+
.+?
Any suggestions? Running this on https://regex101.com works.