Webpack regex test that matches *.ts but not *.d.ts
up vote
1
down vote
favorite
I am using Webpack (2.3.3) to build my Aurelia app in TS. However, since I am using includeAll
option for AureliaPlugin (2.0.0-rc.2), ts-loader (2.0.3) cries about d.ts files that has nothing exported emitting no output.
here is my rule for ts files: { test: /.ts$/, include: /ClientApp/, use: "ts-loader" }
I need to change the test value in a way that it matches files named *.ts except *.d.ts. Can you help me please?
Note: I see there is already a similar regex question but that one did not work for me.
regex webpack aurelia ts-loader
add a comment |
up vote
1
down vote
favorite
I am using Webpack (2.3.3) to build my Aurelia app in TS. However, since I am using includeAll
option for AureliaPlugin (2.0.0-rc.2), ts-loader (2.0.3) cries about d.ts files that has nothing exported emitting no output.
here is my rule for ts files: { test: /.ts$/, include: /ClientApp/, use: "ts-loader" }
I need to change the test value in a way that it matches files named *.ts except *.d.ts. Can you help me please?
Note: I see there is already a similar regex question but that one did not work for me.
regex webpack aurelia ts-loader
1
Try/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
. Also, see this SO thread.
– Wiktor Stribiżew
Apr 19 '17 at 8:38
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I am using Webpack (2.3.3) to build my Aurelia app in TS. However, since I am using includeAll
option for AureliaPlugin (2.0.0-rc.2), ts-loader (2.0.3) cries about d.ts files that has nothing exported emitting no output.
here is my rule for ts files: { test: /.ts$/, include: /ClientApp/, use: "ts-loader" }
I need to change the test value in a way that it matches files named *.ts except *.d.ts. Can you help me please?
Note: I see there is already a similar regex question but that one did not work for me.
regex webpack aurelia ts-loader
I am using Webpack (2.3.3) to build my Aurelia app in TS. However, since I am using includeAll
option for AureliaPlugin (2.0.0-rc.2), ts-loader (2.0.3) cries about d.ts files that has nothing exported emitting no output.
here is my rule for ts files: { test: /.ts$/, include: /ClientApp/, use: "ts-loader" }
I need to change the test value in a way that it matches files named *.ts except *.d.ts. Can you help me please?
Note: I see there is already a similar regex question but that one did not work for me.
regex webpack aurelia ts-loader
regex webpack aurelia ts-loader
asked Apr 19 '17 at 8:34
Hasan
1,11421834
1,11421834
1
Try/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
. Also, see this SO thread.
– Wiktor Stribiżew
Apr 19 '17 at 8:38
add a comment |
1
Try/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
. Also, see this SO thread.
– Wiktor Stribiżew
Apr 19 '17 at 8:38
1
1
Try
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
. Also, see this SO thread.– Wiktor Stribiżew
Apr 19 '17 at 8:38
Try
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
. Also, see this SO thread.– Wiktor Stribiżew
Apr 19 '17 at 8:38
add a comment |
1 Answer
1
active
oldest
votes
up vote
5
down vote
accepted
A regex that matches strings with .ts
at the end but not .d.ts
is
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
See a regex demo. It is a POSIX style expression that will work with any regex engine.
Details
(^.?|.[^d]|[^.]d|[^.][^d])
- either of:
^.?
- start of string + any optional char
.[^d]
- a dot and any char butd
[^.]d
- any char but.
andd
[^.][^d]
- any char but.
and then any char butd
(this way, we match all but.d
)
.
- a literal dot
ts$
-ts
at the end of string.
Alternatively, use a lookahead based solution:
/^(?!.*.d.ts$).*.ts$/
See another demo
Details:
^
- start of string
(?!.*.d.ts$)
- the string cannot end with.d.ts
.*
- any 0+ chars up to the
.ts$
-.ts
at the end of the string.
However, you might explore another option described in this SO thread.
1
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
1
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
5
down vote
accepted
A regex that matches strings with .ts
at the end but not .d.ts
is
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
See a regex demo. It is a POSIX style expression that will work with any regex engine.
Details
(^.?|.[^d]|[^.]d|[^.][^d])
- either of:
^.?
- start of string + any optional char
.[^d]
- a dot and any char butd
[^.]d
- any char but.
andd
[^.][^d]
- any char but.
and then any char butd
(this way, we match all but.d
)
.
- a literal dot
ts$
-ts
at the end of string.
Alternatively, use a lookahead based solution:
/^(?!.*.d.ts$).*.ts$/
See another demo
Details:
^
- start of string
(?!.*.d.ts$)
- the string cannot end with.d.ts
.*
- any 0+ chars up to the
.ts$
-.ts
at the end of the string.
However, you might explore another option described in this SO thread.
1
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
1
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
add a comment |
up vote
5
down vote
accepted
A regex that matches strings with .ts
at the end but not .d.ts
is
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
See a regex demo. It is a POSIX style expression that will work with any regex engine.
Details
(^.?|.[^d]|[^.]d|[^.][^d])
- either of:
^.?
- start of string + any optional char
.[^d]
- a dot and any char butd
[^.]d
- any char but.
andd
[^.][^d]
- any char but.
and then any char butd
(this way, we match all but.d
)
.
- a literal dot
ts$
-ts
at the end of string.
Alternatively, use a lookahead based solution:
/^(?!.*.d.ts$).*.ts$/
See another demo
Details:
^
- start of string
(?!.*.d.ts$)
- the string cannot end with.d.ts
.*
- any 0+ chars up to the
.ts$
-.ts
at the end of the string.
However, you might explore another option described in this SO thread.
1
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
1
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
add a comment |
up vote
5
down vote
accepted
up vote
5
down vote
accepted
A regex that matches strings with .ts
at the end but not .d.ts
is
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
See a regex demo. It is a POSIX style expression that will work with any regex engine.
Details
(^.?|.[^d]|[^.]d|[^.][^d])
- either of:
^.?
- start of string + any optional char
.[^d]
- a dot and any char butd
[^.]d
- any char but.
andd
[^.][^d]
- any char but.
and then any char butd
(this way, we match all but.d
)
.
- a literal dot
ts$
-ts
at the end of string.
Alternatively, use a lookahead based solution:
/^(?!.*.d.ts$).*.ts$/
See another demo
Details:
^
- start of string
(?!.*.d.ts$)
- the string cannot end with.d.ts
.*
- any 0+ chars up to the
.ts$
-.ts
at the end of the string.
However, you might explore another option described in this SO thread.
A regex that matches strings with .ts
at the end but not .d.ts
is
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
See a regex demo. It is a POSIX style expression that will work with any regex engine.
Details
(^.?|.[^d]|[^.]d|[^.][^d])
- either of:
^.?
- start of string + any optional char
.[^d]
- a dot and any char butd
[^.]d
- any char but.
andd
[^.][^d]
- any char but.
and then any char butd
(this way, we match all but.d
)
.
- a literal dot
ts$
-ts
at the end of string.
Alternatively, use a lookahead based solution:
/^(?!.*.d.ts$).*.ts$/
See another demo
Details:
^
- start of string
(?!.*.d.ts$)
- the string cannot end with.d.ts
.*
- any 0+ chars up to the
.ts$
-.ts
at the end of the string.
However, you might explore another option described in this SO thread.
edited May 23 '17 at 11:46
Community♦
11
11
answered Apr 19 '17 at 10:33
Wiktor Stribiżew
299k16119194
299k16119194
1
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
1
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
add a comment |
1
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
1
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
1
1
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
Never seen the function test in the wild so I had no idea about it. Ah, and the regex works, too. Thanks a lot!
– Hasan
Apr 19 '17 at 10:35
1
1
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
That's awesome!
– Nonoroazoro
Jul 3 at 3:34
add a comment |
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
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f43490499%2fwebpack-regex-test-that-matches-ts-but-not-d-ts%23new-answer', 'question_page');
}
);
Post as a guest
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
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
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
1
Try
/(^.?|.[^d]|[^.]d|[^.][^d]).ts$/
. Also, see this SO thread.– Wiktor Stribiżew
Apr 19 '17 at 8:38