thank you

четверг, 3 сентября 2020 г., 13:13:59 UTC+3 пользователь Brian Candler 
написал:
>
> On Thursday, 3 September 2020 10:15:29 UTC+1, Emilius Omeen wrote:
>>
>> pkg "regexp" not have function which allow many group replace, only have 
>> ReplaceAllString 
>>
>>
>>
> If I just take the examples you posted at the start, I can do that with a 
> single ReplaceAllString:
> https://play.golang.org/p/9haO39qV0K2
> https://play.golang.org/p/v3dLbTKHCtR
>
> I think the original problem definition doesn't explain why it needs more 
> than this - maybe you need some more test cases.
>
> You might find Expand <https://golang.org/pkg/regexp/#Regexp.Expand> / 
> ExpandString or ReplaceAllStringFunc useful.
>
> Note that you can write your original regexp with capture groups to 
> distinguish which branch matched:
>
> r := regexp.MustCompile(`(^9(\d{10})$)|(^00(.*)$)|(^\+(.*))`)
>                          ^  ^          ^   ^      ^   ^
>                         $1 $2         $3  $4     $5  $6
>
> Using ...Submatch or ...SubmatchIndex, you can identify which of the 
> branches matched.  If your regexp matches the first alternative, $1 (and 
> $2) will be set.  If it matches the second alternative, $3 (and $4) will be 
> set.  And so on.
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/314af2a4-58ec-459e-92e8-e1e4d0df3cbco%40googlegroups.com.

Reply via email to