BUG: inconsistency in dtype of replace()
- [x] closes #44864 
- [x] tests added / passed
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit) for how to run them
- [x] whatsnew entry

Prevented direct return of Regex=True allowing the dtype conversion to happen.
looks like this is a more limited form of #44940 cc @jbrockmendel  > looks like this is a more limited form of #44940 cc @jbrockmendel

Related, but that focuses on the non-regex paths whereas this is only-regex paths. I have made a new commit that solves the dtype issue, request you to check it @jbrockmendel  Looks good.  Could use a whatsnew note for the bugfix. Whatsnew note is added @jbrockmendel  @shubham11941140 can you merge master (conflicts in the tests) and ping on green Merged master @jreback  I am getting very weird errors which are not related to the big fix, request you to merge so I can move ahead with the next bug fix. @jbrockmendel @jbrockmendel  any update? @jreback , any update?
 @jreback  is is green, request you to merge. thanks @shubham11941140 