현재 제가하고있는 프로젝트에서 위키피디아 스크레이퍼를 만들고 있습니다. 문제는 문자열을 비교하려고 할 때 내 코드가 버그를 생성 할 때가 있다는 것입니다. 동일한 문자열이 있으면 때때로 다른 문자열로 등록됩니다. 예를 들면 다음과 같습니다.공백이 다르며 문자가 null 인 문자를 비교하십시오.
var elementText = $("selector").text();
console.log(elementText); // "abc def"
console.log(elementText === "abc def"); // false
위키 피 디아는 내 코드에서 감지하고 이상하게 여기는 이상한 문자를 사용합니다. 나는 시도했다 :
그리고 elementText.replace(/\s+/g, '')
을 사용하고 어느 쪽도 작동하지 않는 것처럼 보인다. 직관적으로 동일한 문자열이 실제로 같은 문자로 일치하도록이 문자를 완전히 없애려면 어떻게해야합니까?
참고 : ==
으로 코드를 테스트했으며 문제가 해결 된 것 같습니다. 그러나 향후 버그를 피하기 위해이 픽스를 사용하지 않는 것이 좋습니다.
[전체 데이터베이스를 무료로 다운로드 할 수 있음] (https://en.wikipedia.org/wiki/Wikipedia:Database_download)을 알고 계셨습니까? – Liam
@Liam 나는하지 않았다. 나는 이것을 확실히 살펴볼 것입니다. 그렇다면 앞으로도이 문제를 해결할 수있는 방법을 알고 싶습니다. – Bluefire
위키피디아에서는 줄 바꿈하지 않는 공백과 빈칸을 사용하지 않고 거의 모든 null 문자를 사용합니다. 그리고 그때조차'\ s'가 그것들과 일치해야합니다. 그 정규식으로 정확히 무엇을 시도했는지 보여주십시오. – Bergi