2016-08-16 3 views
1

줄마다 최소 마크 업 텍스트를 구문 분석하려고합니다. 현재 편지로 편지를 분석하는 for 루프가 있습니다. 아래의 코드를 참조하십시오깨는 공백을 테스트 할 수 있습니까?

텍스트 :

코드가
<element id="myE"> 
This is some text that 
represents accurately the way I 
have written my html 
file. 
</element> 

: 그것은 연속, 올바른 형식의 문자열 인 것처럼

예상대로
var list = document.getElementById("myE").innerHTML; 
var tallie = 0; 

for (i=1;i<list.length;i++) { 
    if (/*list[i] == " "*/ true) { 
    list += 1; 
    console.log(list[i]); 
    } 
} 

console.log(tallie); 

, 요소에 포함 된 텍스트가 DOM에 렌더링 . 그러나 내가 발견 한 것은 콘솔이 비 분리 공간과 새로운 라인의 차이를 인식한다는 것입니다. 여기서, " "

" 
" 

은 각각 2를 나타낸다.

콘솔에 차이점이있는 것으로 보이므로 차이점을 테스트하는 방법이 있어야합니다. 주석 처리 된 조건의 잠금을 해제하면 비 분리 공간에 대한 테스트가 시작됩니다. 문자 인코딩 문자열을 사용하는 다른 방법이 있다고 생각합니다 (&이 아닌 nbsp, 다른 하나). 따라서 깨는 공간에 대한 문자 코드를 찾을 수있을 것으로 기대하는 것이 합리적입니다. 불행히도 나는 찾을 수 없다.

간단히 말해서, HTML 파일을 한 줄씩 파싱하는 방법은 무엇일까요?

+3

''\ n ''은 줄 바꿈입니다. 그것은 당신이 찾고있는 것입니까? –

+1

많은 세부 사항, 화면 크기, 컨테이너 크기, 글꼴 크기, 확대/축소 등에서 줄 바꿈이 불쾌 할 수는 없습니다. 새 줄로 보는 것과 그렇지 않을 수 있습니다. – Liam

+0

_ "하지만 콘솔에서 인라인 공백은 비공개 공백으로 나타납니다." ""'_ -''''만 있으면 볼 수 있습니다. 그러면 정상인지 아닌지 알 수 있습니다 ...? – CBroe

답변

1

줄 바꿈 문자는 \n으로 인코딩됩니다. 때로는 캐리지 리턴과 새 줄 \r\n의 조합을 찾을 수도 있습니다 (뉴 라인의 위키 백과 참조). 이것들은 비 깨진 공간 &nbsp; 또는 &#160;과 혼동되어서는 안됩니다.이 단어는 브라우저에서 단어 줄 바꾸기를하지 않고 공백을 표시하려는 경우 또는 브라우저가 여러 공백을 함께 접기를 원하지 않는 경우에 사용됩니다.

관련 문제