빠른 질문, 나는 더블 별표에서 굵은 글씨로 변환하려는 markdown HTML 콘텐츠가 있습니다.javascript match 텍스트를 대체하십시오
내가지고있어 오류가 있습니다 :`catch되지 않은 형식 오류 : 여기에
'널 (null)의'대체 '방법을 호출 할 수 없습니다 년대 jsfiddle : 여기 http://jsfiddle.net/fz5ZT/9/
년대 HTML :
<div class="comments">comment 1** is good**</div>
<div class="comments">comment 2**is bad**</div>
가 여기에 JS :
function markdown(markdownable){
var boldMatch = markdownable.match(/\*\*[A-Za-z0-9]+\*\*/gim),
boldReplace = boldMatch.replace(/\*\*[A-z0-9]+\*\*/gim, '<span style="font- weight:bold;color:blue;">'+boldMatch+'</span>'),
markdownable = markdownable.replace(boldMatch, boldReplace),
markdownable = markdownable.replace(/\*\*/gi, "");
return markdownable;
}
$('.comments').each(function(){
var markdownable=$(this).html(), comments=markdown(markdownable);
});
내가 도와 줄 수있는 경우 atly,
덕분에 그것을 감사, 팀
갱신 덕분에 모든! 작동중인 데모는 다음을 참조하십시오. http://jsfiddle.net/fz5ZT/30/
굵은 rexep이 일치하지 않으면 "boldMatch"는 null입니다. "null"은 (프로토 타입) "교체"속성을 호출하지 않고 오류를 던집니다. – Bergi
Bergi에게 감사의 말을 전하지만, 왜 "boldMatch"가 두 개의 별표가있는 텍스트를 포함하는 변수'mardownable'을 제공한다면 null입니까? 일치하지 않아야합니까? –
아니요, markdownable에는 공백이 없으며 정규식 중 어느 것과도 일치하지 않습니다. – Bergi