kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #35712
Re: RegEx help
-
To:
kicad-developers@xxxxxxxxxxxxxxxxxxx
-
From:
Thomas Pointhuber <thomas.pointhuber@xxxxxx>
-
Date:
Sat, 5 May 2018 16:07:06 +0200
-
Autocrypt:
addr=thomas.pointhuber@xxxxxx; prefer-encrypt=mutual; keydata= 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 Pm/7xjyRQ7uil90nCFwzjw==
-
In-reply-to:
<4180FBAC-AFF6-4A9B-86EE-39C2A80354CF@rokeby.ie>
-
Openpgp:
preference=signencrypt
-
User-agent:
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0
Hi Jeff,
I think the regex you want is: ".*\$(\{.+\}|\(.+\)).*" (Note, I didn't
escape anything)
The best way to develop regex would be by using tools like
https://www.debuggex.com or https://regexr.com
For example, the regex I gave you:
https://www.debuggex.com/r/MTdQVK1dJHXhXtsF
Basics:
. any character
* means any number (0 or more) of the previous character or group
? means zero or one occurrence of the previous character or group (in
your case useless)
^ begin of string
$ end of string
"[^}]*" means any number of character except "}"
The question is if you really want allow random strings before/after the
environment var, because this means the exclusion of } would not work.
Environment variables are normally limited to alphanumeric and
underscore, I think. This means, instead of ".+" I would use "\w+" to
match the name.
Regards, Thomas
Am 2018-05-05 um 15:19 schrieb Jeff Young:
> We have a couple of regular expressions of the form:
>
> wxRegEx re( ".*?\\$\\{(.+?)\\}.*?", wxRE_ADVANCED );
>
> Now perhaps I’m too old to remember this stuff correctly, but .*? is
> redundant, isn’t it?
>
> And shouldn’t .+? just be .*? (And for that matter, shouldn’t it
> really be [^}]*?)
>
> Thanks,
> Jeff.
>
>
> Note that I’m looking at this because it needs to check for both ${…}
> and $(…) formatted envvars, which I think boils down to:
>
> .*(\\$\\{([^}]*)\\})|(\\$\\(([^)]*)\\)).*
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
Attachment:
signature.asc
Description: OpenPGP digital signature
References