How to use re.sub
I want to modify the string test, to only have "TEXT" left. Therefor everything after "TEXT" is deleted. I figured that out. But how do I use re.sub to cut everything before "TEXT"? I only want to use " 265" and "159 " as criteria to determine when to delete.
test = "314 159 TEXT 265 357"
test = re.sub(r' 265.*$', '', test)
print(test)
The Output should be "TEXT"
python
|
show 2 more comments
I want to modify the string test, to only have "TEXT" left. Therefor everything after "TEXT" is deleted. I figured that out. But how do I use re.sub to cut everything before "TEXT"? I only want to use " 265" and "159 " as criteria to determine when to delete.
test = "314 159 TEXT 265 357"
test = re.sub(r' 265.*$', '', test)
print(test)
The Output should be "TEXT"
python
What is the expected output? Unclear: " I only want to use " 265" and "159 " as criteria...".
– Austin
Nov 14 '18 at 18:18
Possible duplicate of Stripping everything but alphanumeric chars from a string in Python
– l'L'l
Nov 14 '18 at 18:19
...test = ''.join(x for x in test if x.isalpha())
...
– l'L'l
Nov 14 '18 at 18:21
the same way I used ' 265' in re.sub; The Output should be "TEXT"
– F.Ima
Nov 14 '18 at 18:23
Why do you want to do this withre.sub
? It seems like the wrong tool for the job;re.search
would be more appropriate.
– user2357112
Nov 14 '18 at 18:28
|
show 2 more comments
I want to modify the string test, to only have "TEXT" left. Therefor everything after "TEXT" is deleted. I figured that out. But how do I use re.sub to cut everything before "TEXT"? I only want to use " 265" and "159 " as criteria to determine when to delete.
test = "314 159 TEXT 265 357"
test = re.sub(r' 265.*$', '', test)
print(test)
The Output should be "TEXT"
python
I want to modify the string test, to only have "TEXT" left. Therefor everything after "TEXT" is deleted. I figured that out. But how do I use re.sub to cut everything before "TEXT"? I only want to use " 265" and "159 " as criteria to determine when to delete.
test = "314 159 TEXT 265 357"
test = re.sub(r' 265.*$', '', test)
print(test)
The Output should be "TEXT"
python
python
edited Nov 14 '18 at 18:25
F.Ima
asked Nov 14 '18 at 18:16
F.Ima F.Ima
82
82
What is the expected output? Unclear: " I only want to use " 265" and "159 " as criteria...".
– Austin
Nov 14 '18 at 18:18
Possible duplicate of Stripping everything but alphanumeric chars from a string in Python
– l'L'l
Nov 14 '18 at 18:19
...test = ''.join(x for x in test if x.isalpha())
...
– l'L'l
Nov 14 '18 at 18:21
the same way I used ' 265' in re.sub; The Output should be "TEXT"
– F.Ima
Nov 14 '18 at 18:23
Why do you want to do this withre.sub
? It seems like the wrong tool for the job;re.search
would be more appropriate.
– user2357112
Nov 14 '18 at 18:28
|
show 2 more comments
What is the expected output? Unclear: " I only want to use " 265" and "159 " as criteria...".
– Austin
Nov 14 '18 at 18:18
Possible duplicate of Stripping everything but alphanumeric chars from a string in Python
– l'L'l
Nov 14 '18 at 18:19
...test = ''.join(x for x in test if x.isalpha())
...
– l'L'l
Nov 14 '18 at 18:21
the same way I used ' 265' in re.sub; The Output should be "TEXT"
– F.Ima
Nov 14 '18 at 18:23
Why do you want to do this withre.sub
? It seems like the wrong tool for the job;re.search
would be more appropriate.
– user2357112
Nov 14 '18 at 18:28
What is the expected output? Unclear: " I only want to use " 265" and "159 " as criteria...".
– Austin
Nov 14 '18 at 18:18
What is the expected output? Unclear: " I only want to use " 265" and "159 " as criteria...".
– Austin
Nov 14 '18 at 18:18
Possible duplicate of Stripping everything but alphanumeric chars from a string in Python
– l'L'l
Nov 14 '18 at 18:19
Possible duplicate of Stripping everything but alphanumeric chars from a string in Python
– l'L'l
Nov 14 '18 at 18:19
...
test = ''.join(x for x in test if x.isalpha())
...– l'L'l
Nov 14 '18 at 18:21
...
test = ''.join(x for x in test if x.isalpha())
...– l'L'l
Nov 14 '18 at 18:21
the same way I used ' 265' in re.sub; The Output should be "TEXT"
– F.Ima
Nov 14 '18 at 18:23
the same way I used ' 265' in re.sub; The Output should be "TEXT"
– F.Ima
Nov 14 '18 at 18:23
Why do you want to do this with
re.sub
? It seems like the wrong tool for the job; re.search
would be more appropriate.– user2357112
Nov 14 '18 at 18:28
Why do you want to do this with
re.sub
? It seems like the wrong tool for the job; re.search
would be more appropriate.– user2357112
Nov 14 '18 at 18:28
|
show 2 more comments
1 Answer
1
active
oldest
votes
Use a similar pattern as you did for subbing the end, and string them together.:
test = re.sub(r'.* 159 ', '', re.sub(r' 265.*$', '', test))
Alternatively, you could do it with a single pattern and re.findall
:
test = re.findall(r'^.*159 ([A-Z]+) 265.*$', test)
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',
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%2fstackoverflow.com%2fquestions%2f53306473%2fhow-to-use-re-sub%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
Use a similar pattern as you did for subbing the end, and string them together.:
test = re.sub(r'.* 159 ', '', re.sub(r' 265.*$', '', test))
Alternatively, you could do it with a single pattern and re.findall
:
test = re.findall(r'^.*159 ([A-Z]+) 265.*$', test)
add a comment |
Use a similar pattern as you did for subbing the end, and string them together.:
test = re.sub(r'.* 159 ', '', re.sub(r' 265.*$', '', test))
Alternatively, you could do it with a single pattern and re.findall
:
test = re.findall(r'^.*159 ([A-Z]+) 265.*$', test)
add a comment |
Use a similar pattern as you did for subbing the end, and string them together.:
test = re.sub(r'.* 159 ', '', re.sub(r' 265.*$', '', test))
Alternatively, you could do it with a single pattern and re.findall
:
test = re.findall(r'^.*159 ([A-Z]+) 265.*$', test)
Use a similar pattern as you did for subbing the end, and string them together.:
test = re.sub(r'.* 159 ', '', re.sub(r' 265.*$', '', test))
Alternatively, you could do it with a single pattern and re.findall
:
test = re.findall(r'^.*159 ([A-Z]+) 265.*$', test)
answered Nov 14 '18 at 18:27
TimTim
1,759620
1,759620
add a comment |
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.
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%2f53306473%2fhow-to-use-re-sub%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
What is the expected output? Unclear: " I only want to use " 265" and "159 " as criteria...".
– Austin
Nov 14 '18 at 18:18
Possible duplicate of Stripping everything but alphanumeric chars from a string in Python
– l'L'l
Nov 14 '18 at 18:19
...
test = ''.join(x for x in test if x.isalpha())
...– l'L'l
Nov 14 '18 at 18:21
the same way I used ' 265' in re.sub; The Output should be "TEXT"
– F.Ima
Nov 14 '18 at 18:23
Why do you want to do this with
re.sub
? It seems like the wrong tool for the job;re.search
would be more appropriate.– user2357112
Nov 14 '18 at 18:28