1. 程式人生 > >前端頁面試題答題區遇到()實現換行的方式

前端頁面試題答題區遇到()實現換行的方式

 

在一些題庫系統中,很容易遇到分條作答的現象,當大量的答案都只通過一段話顯示在一起的時候,很難讓人分清楚條理,關鍵字也不明顯,很容易出現錯判斷的現象,而通過括號大段的在一起也很難看,那麼怎樣才能實現分條作答的頁面呢?

思路如下:

1、給出規範,如遇到()代表答案內容中的一條;

2、推測特殊情況,考慮細節,當給出的1中情況出現其他特殊情況時,該怎樣解決,使用正則表示式判斷;

3、仿編譯原理,字元化解決問題,大事化小,小事化了。

例項:遇到()分條顯示,()內為文字則不換行,非文字則換行。

程式碼如下:

//換行效果實現
function NewLine(values) {
    var i;
    var result = "";
    var c;
    var reg = /^[\u4e00-\u9fa5],{0,}$/;
    for (i = 0; i < values.length; i++) {
        c = values.substr(i, 1);
        b = values.substr(i+1,1);
        if(c == "(" || c == "("){
        	   if((i>1)&&(b!="\r")){
        		   if(!reg.test(b)){
        			   result = result + "</br>" + c;
        		   }else{
        			   result = result + c;
        		   }
        	   }else{
        		   result = result + c;
        	   }
        }else{
           result = result + c;
        }
    }
    return result;
}