Why is “find” on OSX having trouble with regex?
up vote
1
down vote
favorite
find -E . -type f -iregex ".Diss..tex" -exec basename {} +
or
find -E . -type f -iregex "(.*/).Diss..tex" -exec basename {} +
Finds ALL files with extension .tex, but does not limit their names to Diss*.tex
Is it OSX malfunctioning, or is the regex wrong?
regex macos find
add a comment |
up vote
1
down vote
favorite
find -E . -type f -iregex ".Diss..tex" -exec basename {} +
or
find -E . -type f -iregex "(.*/).Diss..tex" -exec basename {} +
Finds ALL files with extension .tex, but does not limit their names to Diss*.tex
Is it OSX malfunctioning, or is the regex wrong?
regex macos find
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
find -E . -type f -iregex ".Diss..tex" -exec basename {} +
or
find -E . -type f -iregex "(.*/).Diss..tex" -exec basename {} +
Finds ALL files with extension .tex, but does not limit their names to Diss*.tex
Is it OSX malfunctioning, or is the regex wrong?
regex macos find
find -E . -type f -iregex ".Diss..tex" -exec basename {} +
or
find -E . -type f -iregex "(.*/).Diss..tex" -exec basename {} +
Finds ALL files with extension .tex, but does not limit their names to Diss*.tex
Is it OSX malfunctioning, or is the regex wrong?
regex macos find
regex macos find
edited Nov 15 at 19:16
asked Nov 15 at 18:27
Dmitry Starostin
204
204
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
2
down vote
accepted
The .* pattern matches any 0 or more chars, hence the Myfile may appear in any part of the path. See your regex demo:

You may restrict the Myfile to only appear after the last / if you replace those .* at the end with [^/]* matching any 0+ chars other than /.
The pattern will look like
.*/[^/]*Myfile[^/]*.tex
Here is a demo of what it will match.
1
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53325767%2fwhy-is-find-on-osx-having-trouble-with-regex%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
accepted
The .* pattern matches any 0 or more chars, hence the Myfile may appear in any part of the path. See your regex demo:

You may restrict the Myfile to only appear after the last / if you replace those .* at the end with [^/]* matching any 0+ chars other than /.
The pattern will look like
.*/[^/]*Myfile[^/]*.tex
Here is a demo of what it will match.
1
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
add a comment |
up vote
2
down vote
accepted
The .* pattern matches any 0 or more chars, hence the Myfile may appear in any part of the path. See your regex demo:

You may restrict the Myfile to only appear after the last / if you replace those .* at the end with [^/]* matching any 0+ chars other than /.
The pattern will look like
.*/[^/]*Myfile[^/]*.tex
Here is a demo of what it will match.
1
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
add a comment |
up vote
2
down vote
accepted
up vote
2
down vote
accepted
The .* pattern matches any 0 or more chars, hence the Myfile may appear in any part of the path. See your regex demo:

You may restrict the Myfile to only appear after the last / if you replace those .* at the end with [^/]* matching any 0+ chars other than /.
The pattern will look like
.*/[^/]*Myfile[^/]*.tex
Here is a demo of what it will match.
The .* pattern matches any 0 or more chars, hence the Myfile may appear in any part of the path. See your regex demo:

You may restrict the Myfile to only appear after the last / if you replace those .* at the end with [^/]* matching any 0+ chars other than /.
The pattern will look like
.*/[^/]*Myfile[^/]*.tex
Here is a demo of what it will match.
answered Nov 15 at 18:38
Wiktor Stribiżew
305k16124201
305k16124201
1
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
add a comment |
1
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
1
1
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
Excellent! All clear now.
– Dmitry Starostin
Nov 15 at 19:32
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53325767%2fwhy-is-find-on-osx-having-trouble-with-regex%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown