-
-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set-ShieldsIoBadge replaces whole line (until last ')') #131
Comments
Found something that could work: $ReadmeContent = (Get-Content $Path)
#$ReadmeContent = $ReadmeContent -replace "!\[$($Subject)\].+\)", "![$($Subject)](https://img.shields.io/badge/$Subject-$Status$Percent-$Color.svg)"
$Pattern = "!\[$($Subject)\].+?\)"
$String = "![$($Subject)](https://img.shields.io/badge/$Subject-$Status$Percent-$Color.svg)"
$ReadmeContent = $ReadmeContent | ForEach-Object {
if ( ([regex]::Matches($_, $Pattern).success) ) { $_ -replace $Pattern, $String } else { $_ }
}
$ReadmeContent | Set-Content -Path $Path for my testing, it did leave the rest alone and just altered the matching string only |
DEberhardt
added a commit
to DEberhardt/BuildHelpers
that referenced
this issue
Jul 2, 2022
Adding surgical precision to Badge replace.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hello,
first of all, thank you for this, this module helps A LOT - made more progress in the last two weeks learning and understanding the build process, runners, etc. than in the last two years!
I want to utilize
Set-ShieldsIoBadge
and I have a little table that contains the badges, looks like this:Component Status
after running updates against them, it looks like this:
Component Status
Looking into
Set-ShieldsIoBadge
, I find that the match string is finding too much:It looks like it replaces the whole line until the (last?) ')' rather than the next one found.
Playing around with Regex and Lazy operators, but cannot find a suitable match that would reduce the match to the actual.
Is there a way to do this please?
Thank you,
David
The text was updated successfully, but these errors were encountered: