Function `ExecRegExpr` in unit `uregexpr` will not parse some complicated regex patterns correctly, such as a UUID pattern.
## Summary
Function `ExecRegExpr` in unit `uregexpr` can't recognize a correct UUID string such as `1f20d5ba-3618-432e-9ba6-f050dc12602d` with a correct UUID pattern string such as `^[\da-f]{8}(-[\da-f]{4}){3}-[\da-f]{12}$` or `^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$` on AARCH64 platform such as Apple M1 Ultra CPU. However, it behaves normally at least on x86-64 platform.
## System Information
<!-- The more information are provided the easier it is to replicate the bug -->
- **Operating system:** MacOS 14.6.1 (Sonoma) <!-- Windows, Linux (if possible, also name the distro), FreeBSD, Android, ... -->
- **Processor architecture:** AARCH64 <!-- x86, x86-64, ARM, AARCH64, AVR, RISC-V, PowerPC, ... -->
- **Compiler version:** trunk, stable, 3.2.2, fixes, and fixes-3.2 <!-- 3.2, 3.2.2, 3.3, trunk, beta, ... (if possible, give also the git hash) -->
- **Device:** Computer <!-- Computer, Tablet, Mobile, Amiga, Microcontroller, ... -->
## Steps to reproduce
1. Open Lazarus, create a GUI Application.
2. Put a button named Button1 on Form1.
3. Double click Button1 and add the code below:
```pascal
Procedure TForm1.Button1Click(Sender: TObject);
Begin
If ExecRegExpr('^[\da-f]{8}(-[\da-f]{4}){3}-[\da-f]{12}$',
'1f20d5ba-3618-432e-9ba6-f050dc12602d') Then
ShowMessage('1: Match')
Else
ShowMessage('1: Not match');
If ExecRegExpr('^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$',
'1f20d5ba-3618-432e-9ba6-f050dc12602d') Then
ShowMessage('2: Match')
Else
ShowMessage('2: Not match');
End;
```
4. Compile and run the application.
5. Click Button1.
## Example Project
<!-- If possible, please create an example project that exhibits the problematic
behavior, and link to it here in the bug report. -->
## What is the current bug behavior?
<!-- What actually happens -->
- For the first message box, it says: `1: Not match`.
- For the second message box, it says: `2: Not match`.
## What is the expected (correct) behavior?
<!-- What you should see instead -->
- For the first message box, it should say: `1: Match`.
- For the second message box, it should say: `2: Match`.
## Relevant logs and/or screenshots
<!-- Paste any relevant logs - please use code blocks (```) to format console output, logs, and code, as
it's very hard to read otherwise.
You can also use syntax highlighting for Pascal with: ```pascal the code```
For more information see https://docs.gitlab.com/ee/user/markdown.html -->
## Possible fixes
<!-- If you can, link to the line of code that might be responsible for the problem -->
issue