C # HTML 민첩성 팩 - SelectNodes에서 변수 사용

c# html-agility-pack

문제

SelectNodes 매개 변수에서 변수를 사용하는 구문은 무엇입니까?

예를 들어,

string foo = "bar";

이 작품

nodes = hd.DocumentNode.SelectNodes("//span[@id='bar']");

그러나

nodes = hd.DocumentNode.SelectNodes("//span[@id=foo]");

노드를 찾지 않습니다. 이 문제는 id 문자열이 무엇인지 확신 할 수 없기 때문에 발생하므로 변수 접근 방식을 사용해야합니다. 적절한 구문은 무엇입니까?

HTML은 다음과 같다.

<span id="bar">text</span>

인기 답변

SelectNodes에서 허용하는 매개 변수는 단지 문자열입니다. 문자열을 미리 선언하거나 한 줄로 모두 처리 할 수 ​​있습니다.

string idName = "bar";
string xpath = "//span[@id='" + idName + "']";
nodes = hd.DocumentNode.SelectNodes(xpath);

또는 다른 문자열 포맷터로 동일한 작업을 수행하는 또 다른 방법은 다음과 같습니다.

string idName = "bar";
nodes = hd.DocumentNode.SelectNodes($"//span[@id='{idName}']");


아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.