How to get the first number from span=(2494, 2516) here?
I want to cut a text from the point where my regex expression is found to the end of the text. The position may vary, so I need that number as a variable.
The position can already be seen in the result of studentnrRegex.search(text)
:
>>> studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
>>> start = studentnrRegex.search(text)
>>> start
<_sre.SRE_Match object; span=(2494, 2516), match='Studentnr = 1825010243'>
>>> myText = text[2494:]
>>> myText
'Studentnr = 1825010243nTEXT = blablabla
Can I get the start position as a variable directly from my variable start, in this case 2494?
python
add a comment |
I want to cut a text from the point where my regex expression is found to the end of the text. The position may vary, so I need that number as a variable.
The position can already be seen in the result of studentnrRegex.search(text)
:
>>> studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
>>> start = studentnrRegex.search(text)
>>> start
<_sre.SRE_Match object; span=(2494, 2516), match='Studentnr = 1825010243'>
>>> myText = text[2494:]
>>> myText
'Studentnr = 1825010243nTEXT = blablabla
Can I get the start position as a variable directly from my variable start, in this case 2494?
python
add a comment |
I want to cut a text from the point where my regex expression is found to the end of the text. The position may vary, so I need that number as a variable.
The position can already be seen in the result of studentnrRegex.search(text)
:
>>> studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
>>> start = studentnrRegex.search(text)
>>> start
<_sre.SRE_Match object; span=(2494, 2516), match='Studentnr = 1825010243'>
>>> myText = text[2494:]
>>> myText
'Studentnr = 1825010243nTEXT = blablabla
Can I get the start position as a variable directly from my variable start, in this case 2494?
python
I want to cut a text from the point where my regex expression is found to the end of the text. The position may vary, so I need that number as a variable.
The position can already be seen in the result of studentnrRegex.search(text)
:
>>> studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
>>> start = studentnrRegex.search(text)
>>> start
<_sre.SRE_Match object; span=(2494, 2516), match='Studentnr = 1825010243'>
>>> myText = text[2494:]
>>> myText
'Studentnr = 1825010243nTEXT = blablabla
Can I get the start position as a variable directly from my variable start, in this case 2494?
python
python
edited Nov 24 '18 at 4:42
Craig
2,2061819
2,2061819
asked Nov 24 '18 at 3:59
PedroskiPedroski
1345
1345
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The match
object returned by calling .search()
has .start()
and .end()
methods that return the starting and ending positions of the match.
studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
m = studentnrRegex.search(text)
start = m.start()
print(mytext[start:])
You can accomplish the same thing with a different regex that matches the student number and everything after it. This will save you the trouble of doing the slice:
studentnrRegex = re.compile(r'(Studentnr = 18d{8}).*', re.DOTALL)
m = studentnrRegex.search(text)
print(m.group())
The {8}
matches 8 repeats of the d
and the .*
matches all remaining characters until the end of the string (including newlines) as long as the re.DOTALL
flag is specified. The full match is group 0, which is the default value for the .group()
method of the match object. You can access the student number as m.group(1)
.
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
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%2f53455044%2fhow-to-get-the-first-number-from-span-2494-2516-here%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
The match
object returned by calling .search()
has .start()
and .end()
methods that return the starting and ending positions of the match.
studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
m = studentnrRegex.search(text)
start = m.start()
print(mytext[start:])
You can accomplish the same thing with a different regex that matches the student number and everything after it. This will save you the trouble of doing the slice:
studentnrRegex = re.compile(r'(Studentnr = 18d{8}).*', re.DOTALL)
m = studentnrRegex.search(text)
print(m.group())
The {8}
matches 8 repeats of the d
and the .*
matches all remaining characters until the end of the string (including newlines) as long as the re.DOTALL
flag is specified. The full match is group 0, which is the default value for the .group()
method of the match object. You can access the student number as m.group(1)
.
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
add a comment |
The match
object returned by calling .search()
has .start()
and .end()
methods that return the starting and ending positions of the match.
studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
m = studentnrRegex.search(text)
start = m.start()
print(mytext[start:])
You can accomplish the same thing with a different regex that matches the student number and everything after it. This will save you the trouble of doing the slice:
studentnrRegex = re.compile(r'(Studentnr = 18d{8}).*', re.DOTALL)
m = studentnrRegex.search(text)
print(m.group())
The {8}
matches 8 repeats of the d
and the .*
matches all remaining characters until the end of the string (including newlines) as long as the re.DOTALL
flag is specified. The full match is group 0, which is the default value for the .group()
method of the match object. You can access the student number as m.group(1)
.
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
add a comment |
The match
object returned by calling .search()
has .start()
and .end()
methods that return the starting and ending positions of the match.
studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
m = studentnrRegex.search(text)
start = m.start()
print(mytext[start:])
You can accomplish the same thing with a different regex that matches the student number and everything after it. This will save you the trouble of doing the slice:
studentnrRegex = re.compile(r'(Studentnr = 18d{8}).*', re.DOTALL)
m = studentnrRegex.search(text)
print(m.group())
The {8}
matches 8 repeats of the d
and the .*
matches all remaining characters until the end of the string (including newlines) as long as the re.DOTALL
flag is specified. The full match is group 0, which is the default value for the .group()
method of the match object. You can access the student number as m.group(1)
.
The match
object returned by calling .search()
has .start()
and .end()
methods that return the starting and ending positions of the match.
studentnrRegex = re.compile(r'(Studentnr = 18dddddddd)')
m = studentnrRegex.search(text)
start = m.start()
print(mytext[start:])
You can accomplish the same thing with a different regex that matches the student number and everything after it. This will save you the trouble of doing the slice:
studentnrRegex = re.compile(r'(Studentnr = 18d{8}).*', re.DOTALL)
m = studentnrRegex.search(text)
print(m.group())
The {8}
matches 8 repeats of the d
and the .*
matches all remaining characters until the end of the string (including newlines) as long as the re.DOTALL
flag is specified. The full match is group 0, which is the default value for the .group()
method of the match object. You can access the student number as m.group(1)
.
edited Nov 27 '18 at 2:51
answered Nov 24 '18 at 4:34
CraigCraig
2,2061819
2,2061819
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
add a comment |
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
Thanks a lot! I see I have a lot to learn!
– Pedroski
Nov 24 '18 at 9:06
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%2f53455044%2fhow-to-get-the-first-number-from-span-2494-2516-here%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