How can I read a braces delimited text file in a Windows batch file?
I have the file txt having some lines , and here below is my txt file
rule.txt
----------------------------------------
direct
replace{100,1011}
replace{india,o891}
replace{1100,101}
-----------------------------------------
I need to capture the numbers in between open braces and closed brace using batch file.
windows batch batch-file
add a comment |
I have the file txt having some lines , and here below is my txt file
rule.txt
----------------------------------------
direct
replace{100,1011}
replace{india,o891}
replace{1100,101}
-----------------------------------------
I need to capture the numbers in between open braces and closed brace using batch file.
windows batch batch-file
1
(1) As a matter of names,(
and)
are called parentheses. They do look similar to braces:{
and}
. (2) What research have you done? What have you tried?
– Scott
Dec 26 '18 at 5:20
Starting pointers perhaps....FOR /F "USEBACKQ DELIMS={, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
andFOR /F "USEBACKQ DELIMS=}, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
, and then you can use some logic to concat the two in order and perhaps replace nonint
with zero or whatever else you need. Your requirements are vague but I'd tackle with PowerShell myself for something like this rather than batch but those are some batch quick thought starting points with vague requirements perhaps.
– Pimp Juice IT
Dec 26 '18 at 7:22
add a comment |
I have the file txt having some lines , and here below is my txt file
rule.txt
----------------------------------------
direct
replace{100,1011}
replace{india,o891}
replace{1100,101}
-----------------------------------------
I need to capture the numbers in between open braces and closed brace using batch file.
windows batch batch-file
I have the file txt having some lines , and here below is my txt file
rule.txt
----------------------------------------
direct
replace{100,1011}
replace{india,o891}
replace{1100,101}
-----------------------------------------
I need to capture the numbers in between open braces and closed brace using batch file.
windows batch batch-file
windows batch batch-file
edited Dec 26 '18 at 5:47
CodeIt
1,14311124
1,14311124
asked Dec 26 '18 at 5:12
dumbuudumbuu
304
304
1
(1) As a matter of names,(
and)
are called parentheses. They do look similar to braces:{
and}
. (2) What research have you done? What have you tried?
– Scott
Dec 26 '18 at 5:20
Starting pointers perhaps....FOR /F "USEBACKQ DELIMS={, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
andFOR /F "USEBACKQ DELIMS=}, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
, and then you can use some logic to concat the two in order and perhaps replace nonint
with zero or whatever else you need. Your requirements are vague but I'd tackle with PowerShell myself for something like this rather than batch but those are some batch quick thought starting points with vague requirements perhaps.
– Pimp Juice IT
Dec 26 '18 at 7:22
add a comment |
1
(1) As a matter of names,(
and)
are called parentheses. They do look similar to braces:{
and}
. (2) What research have you done? What have you tried?
– Scott
Dec 26 '18 at 5:20
Starting pointers perhaps....FOR /F "USEBACKQ DELIMS={, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
andFOR /F "USEBACKQ DELIMS=}, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
, and then you can use some logic to concat the two in order and perhaps replace nonint
with zero or whatever else you need. Your requirements are vague but I'd tackle with PowerShell myself for something like this rather than batch but those are some batch quick thought starting points with vague requirements perhaps.
– Pimp Juice IT
Dec 26 '18 at 7:22
1
1
(1) As a matter of names,
(
and )
are called parentheses. They do look similar to braces: {
and }
. (2) What research have you done? What have you tried?– Scott
Dec 26 '18 at 5:20
(1) As a matter of names,
(
and )
are called parentheses. They do look similar to braces: {
and }
. (2) What research have you done? What have you tried?– Scott
Dec 26 '18 at 5:20
Starting pointers perhaps....
FOR /F "USEBACKQ DELIMS={, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
and FOR /F "USEBACKQ DELIMS=}, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
, and then you can use some logic to concat the two in order and perhaps replace non int
with zero or whatever else you need. Your requirements are vague but I'd tackle with PowerShell myself for something like this rather than batch but those are some batch quick thought starting points with vague requirements perhaps.– Pimp Juice IT
Dec 26 '18 at 7:22
Starting pointers perhaps....
FOR /F "USEBACKQ DELIMS={, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
and FOR /F "USEBACKQ DELIMS=}, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
, and then you can use some logic to concat the two in order and perhaps replace non int
with zero or whatever else you need. Your requirements are vague but I'd tackle with PowerShell myself for something like this rather than batch but those are some batch quick thought starting points with vague requirements perhaps.– Pimp Juice IT
Dec 26 '18 at 7:22
add a comment |
2 Answers
2
active
oldest
votes
With a batch-file:
:: Q:Test20181226SU_1387726.cmd
@Echo off
For /F "tokens=2,3 delims={,}" %%A IN (
' findstr "{" rule.txt'
) DO ECHO:%%A =^> %%B
sample output:
> Q:Test20181226SU_1387726.cmd
100 => 1011
india => o891
1100 => 101
add a comment |
If you are trying to capture the data inside the curly braces then you may use the following powershell command.
Get-ChildItem rule.txt | Select-String -Pattern '(?<={).*?(?=})' | % { $_.Matches } | % { $_.Value }
Output
100,1011
india,o891
1100,101
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
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',
autoActivateHeartbeat: false,
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%2fsuperuser.com%2fquestions%2f1387726%2fhow-can-i-read-a-braces-delimited-text-file-in-a-windows-batch-file%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
With a batch-file:
:: Q:Test20181226SU_1387726.cmd
@Echo off
For /F "tokens=2,3 delims={,}" %%A IN (
' findstr "{" rule.txt'
) DO ECHO:%%A =^> %%B
sample output:
> Q:Test20181226SU_1387726.cmd
100 => 1011
india => o891
1100 => 101
add a comment |
With a batch-file:
:: Q:Test20181226SU_1387726.cmd
@Echo off
For /F "tokens=2,3 delims={,}" %%A IN (
' findstr "{" rule.txt'
) DO ECHO:%%A =^> %%B
sample output:
> Q:Test20181226SU_1387726.cmd
100 => 1011
india => o891
1100 => 101
add a comment |
With a batch-file:
:: Q:Test20181226SU_1387726.cmd
@Echo off
For /F "tokens=2,3 delims={,}" %%A IN (
' findstr "{" rule.txt'
) DO ECHO:%%A =^> %%B
sample output:
> Q:Test20181226SU_1387726.cmd
100 => 1011
india => o891
1100 => 101
With a batch-file:
:: Q:Test20181226SU_1387726.cmd
@Echo off
For /F "tokens=2,3 delims={,}" %%A IN (
' findstr "{" rule.txt'
) DO ECHO:%%A =^> %%B
sample output:
> Q:Test20181226SU_1387726.cmd
100 => 1011
india => o891
1100 => 101
answered Dec 26 '18 at 17:27
LotPingsLotPings
4,8011722
4,8011722
add a comment |
add a comment |
If you are trying to capture the data inside the curly braces then you may use the following powershell command.
Get-ChildItem rule.txt | Select-String -Pattern '(?<={).*?(?=})' | % { $_.Matches } | % { $_.Value }
Output
100,1011
india,o891
1100,101
add a comment |
If you are trying to capture the data inside the curly braces then you may use the following powershell command.
Get-ChildItem rule.txt | Select-String -Pattern '(?<={).*?(?=})' | % { $_.Matches } | % { $_.Value }
Output
100,1011
india,o891
1100,101
add a comment |
If you are trying to capture the data inside the curly braces then you may use the following powershell command.
Get-ChildItem rule.txt | Select-String -Pattern '(?<={).*?(?=})' | % { $_.Matches } | % { $_.Value }
Output
100,1011
india,o891
1100,101
If you are trying to capture the data inside the curly braces then you may use the following powershell command.
Get-ChildItem rule.txt | Select-String -Pattern '(?<={).*?(?=})' | % { $_.Matches } | % { $_.Value }
Output
100,1011
india,o891
1100,101
answered Dec 26 '18 at 6:15
CodeItCodeIt
1,14311124
1,14311124
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- 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%2fsuperuser.com%2fquestions%2f1387726%2fhow-can-i-read-a-braces-delimited-text-file-in-a-windows-batch-file%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
1
(1) As a matter of names,
(
and)
are called parentheses. They do look similar to braces:{
and}
. (2) What research have you done? What have you tried?– Scott
Dec 26 '18 at 5:20
Starting pointers perhaps....
FOR /F "USEBACKQ DELIMS={, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
andFOR /F "USEBACKQ DELIMS=}, TOKENS=2" %F IN ("C:foldertext.txt") DO ECHO %~F
, and then you can use some logic to concat the two in order and perhaps replace nonint
with zero or whatever else you need. Your requirements are vague but I'd tackle with PowerShell myself for something like this rather than batch but those are some batch quick thought starting points with vague requirements perhaps.– Pimp Juice IT
Dec 26 '18 at 7:22