From 068fc7f2e81178e55fa191a13709af64b1a163f6 Mon Sep 17 00:00:00 2001
From: EricsHu <hrr145632>
Date: 星期一, 05 十二月 2022 14:27:43 +0800
Subject: [PATCH] 处理编码

---
 src/main/java/com/qxueyou/scc/exercise/service/impl/parser/ItemParser.java |   36 ++++++++++++++++++------------------
 1 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/qxueyou/scc/exercise/service/impl/parser/ItemParser.java b/src/main/java/com/qxueyou/scc/exercise/service/impl/parser/ItemParser.java
index d2e0658..fd5bd7b 100644
--- a/src/main/java/com/qxueyou/scc/exercise/service/impl/parser/ItemParser.java
+++ b/src/main/java/com/qxueyou/scc/exercise/service/impl/parser/ItemParser.java
@@ -14,21 +14,21 @@
 public class ItemParser extends Parser {
 	
 	/**
-	 * 习题开始模式匹配
+	 * 涔犻寮�濮嬫ā寮忓尮閰�
 	 */
 	Pattern patternItem = Pattern.compile("\\d+");
 	
-	private Pattern analysis = Pattern.compile("解析");
+	private Pattern analysis = Pattern.compile("瑙f瀽");
 	
 	/**
-	 * 习题选项编号模式[带括号]
+	 * 涔犻閫夐」缂栧彿妯″紡[甯︽嫭鍙穄
 	 */
-	//Pattern optNoWithBrackets = Pattern.compile("\\(?[ABCDEFabcdef]\\)?[、..]");
+	//Pattern optNoWithBrackets = Pattern.compile("\\(?[ABCDEFabcdef]\\)?[銆�.锛嶿");
 	
 	/**
-	 * 习题选项  word自带的格式的 a.a、a)	这三种较为普遍,目前03可以解析成功,07解析失败*[\t]
+	 * 涔犻閫夐」  word鑷甫鐨勬牸寮忕殑 a.a銆乤)	杩欎笁绉嶈緝涓烘櫘閬嶏紝鐩墠03鍙互瑙f瀽鎴愬姛锛�07瑙f瀽澶辫触*[\t]
 	 */
-	Pattern optNoWithBrackets = Pattern.compile("\\(?[ABCDEFabcdef]\\)?[..、]");
+	Pattern optNoWithBrackets = Pattern.compile("\\(?[ABCDEFabcdef]\\)?[.锛庛�乚");
 	
 	ItemAnswerParser answerParser = new ItemAnswerParser();
 	
@@ -40,25 +40,25 @@
 	}
 	
 	/**
-	 * 解析 Item
+	 * 瑙f瀽 Item
 	 * @param item
 	 * @param str
 	 * @return
 	 */
 	private ParseResult parse(Item item, String str) {
 		
-		//习题
+		//涔犻
 		Matcher itemNoMatch = patternItem.matcher(str);
 		Matcher optNoWithBracketsMatch = optNoWithBrackets.matcher(str);
 		Matcher analysisMatch = analysis.matcher(str);
 		
-		//尝试调用上级解析器继续解析
+		//灏濊瘯璋冪敤涓婄骇瑙f瀽鍣ㄧ户缁В鏋�
 		if(!matchBegin(itemNoMatch) && !matchBegin(optNoWithBracketsMatch) && !matchBegin(analysisMatch)){
 			return new ParseResult(false,ParseResult.STEP_PRE,null);
 		}
 		
 		
-		//解析 no,title
+		//瑙f瀽 no,title
 		if(matchBegin(itemNoMatch)){
 			itemNoMatch.find();
 			String no = itemNoMatch.group();
@@ -71,39 +71,39 @@
 				item.setNo(no);
 				item.setTitle(beautyTitle(title));
 				
-				//解析参考答案
+				//瑙f瀽鍙傝�冪瓟妗�
 				answerParser.parse(item, str);
 				
 				return new ParseResult(true,ParseResult.STEP_CUR,null);
 			}
 		}
 		
-		//习题选项
+		//涔犻閫夐」
 		if(matchBegin(optNoWithBracketsMatch)){
 			Option opt = new Option();
 			item.addNode(opt);
 			return new ParseResult(false,ParseResult.STEP_NEXT,opt);
 		}
 		
-		//解析  习题分析
+		//瑙f瀽  涔犻鍒嗘瀽
 		if(matchBegin(analysisMatch)){
 			analysisParser.parse(item,str);
-			//20150907修改:返回item
+			//20150907淇敼锛氳繑鍥瀒tem
 			return new ParseResult(true,ParseResult.STEP_CUR,item);
 		}
 		
-		//20150907修改:本来返回true,没有解析到一个类型,抛到上层
+		//20150907淇敼锛氭湰鏉ヨ繑鍥瀟rue锛屾病鏈夎В鏋愬埌涓�涓被鍨嬶紝鎶涘埌涓婂眰
 		return new ParseResult(false,ParseResult.STEP_PRE,null);
 		
 	}
 	
 	/**
-	 * 去除习题标题多余字符
+	 * 鍘婚櫎涔犻鏍囬澶氫綑瀛楃
 	 * @param title
 	 * @return
 	 */
 	private String beautyTitle(String title){
-		String prefix = ".。~、.";
+		String prefix = ".銆倊銆侊紟";
 		while(title.length()>0 && prefix.contains(title.substring(0, 1))){
 			title = title.substring(1);
 		}
@@ -112,7 +112,7 @@
 	
 	public static void main(String[] args){
 		ItemParser parser  = new ItemParser();
-		parser.parse(null, "59、在培训效果评估的指标中,技能转换指标通常通过()来判断。");
+		parser.parse(null, "59銆佸湪鍩硅鏁堟灉璇勪及鐨勬寚鏍囦腑锛屾妧鑳借浆鎹㈡寚鏍囬�氬父閫氳繃()鏉ュ垽鏂��");
 	}
 
 }

--
Gitblit v1.8.0