XPath: Find a node within a text node
up vote
1
down vote
favorite
I have the following html:
<code>The first code block</code>
<p>Some text and <code>the second code block</code> followed by other text</p>
I need to find and remove all code
blocks from it. I use the following XPath '//code'
, but it finds only the first code block while the second remains.
Question: Why '//code'
is not able to catch the second code block? How to fix it?
Details: I'm doing it in Ruby using Nokagiry
. My code looks like this:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').remove
UPDATE:
The XPath worked in fact. I just made a mistake in different place.
html ruby xml xpath
add a comment |
up vote
1
down vote
favorite
I have the following html:
<code>The first code block</code>
<p>Some text and <code>the second code block</code> followed by other text</p>
I need to find and remove all code
blocks from it. I use the following XPath '//code'
, but it finds only the first code block while the second remains.
Question: Why '//code'
is not able to catch the second code block? How to fix it?
Details: I'm doing it in Ruby using Nokagiry
. My code looks like this:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').remove
UPDATE:
The XPath worked in fact. I just made a mistake in different place.
html ruby xml xpath
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I have the following html:
<code>The first code block</code>
<p>Some text and <code>the second code block</code> followed by other text</p>
I need to find and remove all code
blocks from it. I use the following XPath '//code'
, but it finds only the first code block while the second remains.
Question: Why '//code'
is not able to catch the second code block? How to fix it?
Details: I'm doing it in Ruby using Nokagiry
. My code looks like this:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').remove
UPDATE:
The XPath worked in fact. I just made a mistake in different place.
html ruby xml xpath
I have the following html:
<code>The first code block</code>
<p>Some text and <code>the second code block</code> followed by other text</p>
I need to find and remove all code
blocks from it. I use the following XPath '//code'
, but it finds only the first code block while the second remains.
Question: Why '//code'
is not able to catch the second code block? How to fix it?
Details: I'm doing it in Ruby using Nokagiry
. My code looks like this:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').remove
UPDATE:
The XPath worked in fact. I just made a mistake in different place.
html ruby xml xpath
html ruby xml xpath
edited Nov 8 at 7:29
asked Nov 7 at 20:23
Oleksandr Shpota
3,33511429
3,33511429
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
accepted
Seems like You forget about iterator...
Try:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').each{|htm| htm.remove}
1
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
accepted
Seems like You forget about iterator...
Try:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').each{|htm| htm.remove}
1
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
add a comment |
up vote
1
down vote
accepted
Seems like You forget about iterator...
Try:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').each{|htm| htm.remove}
1
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
add a comment |
up vote
1
down vote
accepted
up vote
1
down vote
accepted
Seems like You forget about iterator...
Try:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').each{|htm| htm.remove}
Seems like You forget about iterator...
Try:
html = Nokogiri::HTML(File.read(htmlFile))
html.search('//code').each{|htm| htm.remove}
answered Nov 8 at 2:10
Ivan Olshansky
23217
23217
1
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
add a comment |
1
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
1
1
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
Thank you. It turns out the the XPath I mentioned in the question worked, I had an error in different place. But your code also works.
– Oleksandr Shpota
Nov 8 at 7:30
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
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53197257%2fxpath-find-a-node-within-a-text-node%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