Interests: Regular Expressions, Linux CLI one-liners, Scripting Languages and Vim
This might work, but I think it is best to not tinker further if you already have a working script (especially one that you understand and can modify further if needed).
perl -pe 's/\[[^]]+\]\((?!https?)[^#]*#\K[^)]+(?=\))/lc $&=~s:%20|\d\K\.(?=\d):-:gr/ge'
Hmm, OP mentioned “Only edit what’s between parentheses” - don’t see anywhere that whole URL shouldn’t be changed…
Here’s a solution with perl
(assuming you don’t want to change http/https after the start of (
instead of start of a line):
perl -pe 's/\[[^]]+\]\(\K(?!https?)[^)]+(?=\))/lc $&=~s|%20|-|gr/ge' ip.txt
e
flag allows you to use Perl code in the substitution portion.\[[^]]+\]\(\K
match square brackets and use \K
to mark the start of matching portion (text before that won’t be part of $&
)(?!https?)
don’t match if http
or https
is found[^)]+(?=\))
match non )
characters and assert that )
is present after those characters$&=~s|%20|-|gr
change %20
to -
for the matching portion found, the r
flag is used to return the modified string instead of change $&
itselflc
is a function to change text to lowercaseGNU datamash (https://www.gnu.org/software/datamash/alternatives/) - handy tool for data munching. There’s also https://github.com/BurntSushi/xsv
Check out my chapter on GNU grep BRE/ERE for those wanting to learn this regex flavor: https://learnbyexample.github.io/learn_gnugrep_ripgrep/breere-regular-expressions.html (there’s also another chapter for PCRE)
Memory, Sorrow, and Thorn by Tad Williams
I use Vim ;)
Python itself provides IDLE, which is good enough for beginners. https://thonny.org/ is another good one for beginners.
As mentioned by others, Jetbrains is good for many languages. https://www.kdevelop.org/ is another option.
I wish you success. I’m happy to use SimpleScreenRecorder(https://github.com/MaartenBaert/ssr).
I’m not the site author, just submitting the link.
Not sure which part you need to be logged in to view - I’m seeing links to different articles and exercises and they are all visible without logging (I checked in an incognito window).
I have a list of learning resources for CLI tools and scripting here: https://learnbyexample.github.io/curated_resources/linux_cli_scripting.html
I’ve also written a few TUI interactive apps to practice text processing commands like grep, sed, awk, coreutils, etc: https://github.com/learnbyexample/TUI-apps
Why do you think it is a phishing link? Gumroad is a well known platform to sell digital goods.
I mention it is free up to some date because it will go back to being a paid product after that.
I started reading progression fantasy on Royal Road earlier this year (a site for posting web serials). Here’s my current follow list (excluding stories that are on hiatus):
Not my blog, just sharing it here.
That said, I don’t see that broken rectangle on Chromium.
Is it regex or sed/awk syntax (or both) that gives you trouble?
I had similar reaction and didn’t even try to learn them for years - then I caught the stackoverflow craze of answering CLI questions (and learning from others).
oxipng, pngquant and svgcleaner for optimizing images
auto-editor for removing silent portions from video recordings
Not my blog, just sharing it here. Saw it on HN (https://news.ycombinator.com/item?id=40419325)
What’s the difference between two_percent and skim?
Check out https://novelwriter.io/
I’m not familiar with such softwares (I use pandoc for technical writing), but might help you…
Well, I’m not going to even try understanding the various features used in that
sed
command. I do know how to use basic loops with labels, but I never bothered with all the buffer manipulation stuff. I’d rather use awk/perl/python for those cases.