Comments (8)
+1 I often note this in my workshops but it would be great to reference one or two the links that you point to for more information. Can you see a point in the lesson where we can add this?
from lc-data-intro.
I think adding 2-3 sentences in the lesson's opening paragraph would be sufficient and then maybe adding the links to the Key Points section.
from lc-data-intro.
@andrewrs Would you be willing and able to recommend some text? I'm aware that there are different flavours of regex, but you seem to no more about the details than I do.
from lc-data-intro.
Here's my first crack at some text:
Most regular expression implementations employ comparable syntaxes (generally influenced by the Perl programming language's regex syntax) that behave similarly for simple pattern-matching operations. But there are differences, often subtle, in each, so it's always a good practice to read application or language's documentation whenever available, especially if you want to start using more advanced regex features. Some programs, notably many UNIX command line programs, use an older regex standard (POSIX regular expressions) which is less feature-rich and employs different metacharacters than Perl-influenced implementations .
I'll see if I can write something a little more tight over the next couple days when I'm not suffering from Friday afternoon brain fade.
I also came across another nice reference at: https://gist.github.com/CMCDragonkai/6c933f4a7d713ef712145c5eb94a1816
from lc-data-intro.
Many thanks. I like it. Shall we go with:
Most regular expression implementations employ comparable syntaxes (generally influenced by the regex syntax of a programming language called Perl) that behave similarly for most pattern-matching operations. But there are differences, often subtle, in each, so it's always a good practice to read application or language's documentation whenever available, especially if you want to start using more advanced regex features. Some programs, notably many UNIX command line programs (for more on UNIX see our 'Shell Lesson'), use an older regex standard (called 'POSIX regular expressions') which is less feature-rich and employs different metacharacters than Perl-influenced implementations. For the purposes of our lesson, you don't need to worry too much about all this, but if you want to follow up on this see this detailed engine comparison.
I suggest we add it between '..including markdown and HTML.' and 'A very simple use of a regular expression..' at https://librarycarpentry.org/lc-data-intro/04-regular-expressions/index.html as a pinned callout (like 'Tab for Auto-complete' at https://librarycarpentry.org/lc-shell/03-working-with-files-and-folders/index.html).
PR here #73
from lc-data-intro.
Yeah, I was thinking that placing the new text between '..including markdown and HTML.' and 'A very simple use of a regular expression..' too.
I forked and the previously referenced regex feature comparison and separated the feature categories into their own tables to allow for easier scrolling:
https://gist.github.com/andrewrs/74ece75269f56d074408df216b3d9e77
I like your edits and additions and I think version you posted is good to go. Yesterday, I revised my initial draft to come up with:
Most regular expression implementations employ comparable syntaxes and metacharacters (generally influenced by the Perl programming language's regex syntax), and they behave similarly for the simple pattern-matching exercises in this lesson. But there are differences, often subtle, in each, so it's always a good practice to read application or language's documentation whenever available, especially when you start using more advanced regex features. Some programs, notably many UNIX command line programs, use an older regex standard (POSIX regular expressions) which is less feature-rich and uses different metacharacters than Perl-influenced implementations. Reference the links at the end of this lesson for greater detail.
Sorry for the delay in posting the revision. Github apparently determined that my final edits to the regex table mentioned above weren't adequately human-like and locked my account for a day until I could customer service to unlock it.
Feel free to pick and choose from either version. Again, I think the version you posted is perfectly sufficient.
from lc-data-intro.
@andrewrs Woah, weird bot drama! I've incorporated your revised text into the PR. Ta!
from lc-data-intro.
Resolved by #73
from lc-data-intro.
Related Issues (20)
- OR (“Finish the expression” in https://librarycarpentry.org/lc-data-intro/02-match-extract-strings/index.html)
- Space or no space in https://librarycarpentry.org/lc-data-intro/04-exercises/index.html
- Use the same term for Lines 55-59 HOT 1
- Lesson Contribution - RegEx Metacharacters
- Need jump lists (anchors) for headings HOT 1
- numbering exercises? HOT 1
- regex.101 quick reference section as 'cheat sheet' in Episode 1 HOT 1
- Hide hints in dropdown to give people a chance to solve the challenge without them
- Scheduling early transition to Workbench HOT 6
- Transition To Workbench in May HOT 15
- Potential revision to initial paragraph (courtesy of @yoyology)
- Links need to be fixed in CONTRIBUTING.md HOT 1
- broken link to Library Hat blog post in 01-regular-expressions.md HOT 2
- Broken link to domain name list HOT 2
- Question about 02-match-extract-strings.md HOT 1
- Extracting a substring in Google Sheets using regex
- Broken link to ACRL Tech Connect blog post
- Phone number exercise is not appropriate for a global audience HOT 1
- Make it obvious that CoC is not the real CoC (or use some other text entirely)
- Summary/setup refers to a (maybe?) deprecated lesson
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lc-data-intro.