[Gambas-user] RegExp: How to find all matches of a pattern (global match)?
Gianluigi
gradobag at gradobag.it
Tue Aug 22 12:01:53 CEST 2023
Il 22/08/23 11:55, Gianluigi ha scritto:
> Il 22/08/23 00:34, T Lee Davidson ha scritto:
>> On 8/21/23 11:16, Gianluigi wrote:
>>> I don't know what's behind the Python code, probably a loop since
>>> that's what C seems to do.
>>
>> No, Python doesn't use a loop; it has a Findall function. It is quite
>> simple and works as one would expect.
>>
>> [code]
>> import re
>>
>> f = open("file_with_ip_addresses.txt")
>> addresses = re.findall( "((?:[0-9]{1,3}\\.){3}[0-9]{1,3})", f.read() )
>> for ip in addresses:
>> print(ip)
>> [/code]
>>
>
> Hi Lee,
>
> While we wait for Benoit, let me happy and try my simple function and
> tell me if it is so slow that it is snubbed.
>
> I attach the test project (no effort required) :-)
>
> Regards
>
> Gianluigi
Sorry, the forgotten project
-------------- next part --------------
<salt FCKGM-0001-CB45-29B0-72B4>
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
9It+0S/6Rb/oF/2iX/SLftH/d/RffSv2lADgAQA=
</salt>
More information about the User
mailing list