[ArrowStringArray] PERF: use pyarrow.compute.replace_substring(_regex) if available
```
[ 50.00%] ··· strings.Methods.time_replace                                                                                                                ok
[ 50.00%] ··· ============== ==========
                  dtype                
              -------------- ----------
                   str        20.6±0ms 
                  string      16.3±0ms 
               arrow_string   1.83±0ms 
              ============== ==========
```

happy to break up if easier to review.
> happy to break up if easier to review.

will do that and mark this as draft for now. closes #41602 , will break off once other pre-cursors merged > closes #41602 , will break off once other pre-cursors merged

opened #41606, after that is merged, this PR is just the addition of the method on ArrowStringArray > opened #41606, after that is merged, this PR is just the addition of the method on ArrowStringArray

will close till then to help clear the queue. @simonjayhawkins at some point should have a whatsnew sub-section about the new arrow perf string functions. sure. I think should probably draw a line under the str accessor methods for now (this is perf only as str accessor methods all fallback if not implemented on the array, we have parameterised test for most) and concentrate on dtype/docs/skipped tests. Will do that in parallel with preparing for the rc.  > @simonjayhawkins at some point should have a whatsnew sub-section about the new arrow perf string functions.

added to #39908