Comments (1)
hey @daniejstriata, this is an interesting idea. I think that you can already do this. Take a look at these examples (based on your examples):
$ echo 'Version: v5.20.0' | choose -f 'Version:\s+' 0
v5.20.0
You could also replace the 0 with : here. The same solution applies to the openssl example.
> echo ' "Source": "/etc/dockers/conf/web/tls",' | choose -f '("Source": "|tls)' 1
/etc/dockers/conf/web/
Using regex field separators with an or condition (|
) lets you effectively set a beginning and end. Assuming the text only appears once in a line, the content between the start and end will always be index 1.
So returning to the string1/string2 examples at the top of your comment, the line lorem ipsum string1 dolor sit string2 amet
can be split with choose -f '(string1|string2)'
, to select the text between the separators, or choose -f 'string1'
to select the text after the separator. I believe this addresses the lower case -m, -a proposal.
Admittedly, this does not solve your suggested case of including the start and end strings, but I see no reason not to use grep "string1.*string2"
or grep "string1.*" for that case. Then you can use
choose -c` to select characters within that. This should address the upper case -M, -A proposal.
Based on these alternatives, I don't think any further change is needed to support your usecase. However, I'd be interested to hear if you feel differently and have more examples.
from choose.
Related Issues (20)
- Cannot use newline as an output separator. HOT 2
- Whitespace not preserved between source and output HOT 2
- Debian package HOT 1
- musl binary for linux HOT 4
- Error message after existing `less` HOT 4
- Can't pipe to head HOT 3
- Crash from empty input and negative choice HOT 4
- Feature request, select by lines too HOT 1
- [Request] Support Escape Character HOT 2
- Unexpected result encountered for X:-Y case HOT 3
- May have Window Version? HOT 5
- How to replace awk split HOT 1
- feature request: align columns HOT 1
- feature request: match columns by name HOT 5
- `--field-separator` does not work correctly if no newline at EOF HOT 3
- Select field from a multiline HOT 1
- I added tab completions for fish shell HOT 3
- Packaging choose to debian HOT 3
- Question: library with similar functionality
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 choose.