Browse Source

是否是纯字母

gaodm 4 years ago
parent
commit
3eebc657d0

+ 8 - 2
src/main/java/com/diagbot/facade/RetrievalFacade.java

@@ -16,6 +16,7 @@ import com.diagbot.enums.StaticTypeEnum;
 import com.diagbot.repository.*;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
 import com.diagbot.vo.RetrievalVO;
 import com.diagbot.vo.StaticKnowledgeIndexVO;
 import com.google.common.collect.Lists;
@@ -68,7 +69,9 @@ public class RetrievalFacade {
      */
     public RetrievalDTO index(RetrievalVO retrievalVO) {
         RetrievalDTO retrievalDTO = new RetrievalDTO();
-        retrievalVO.setInputStr(retrievalVO.getInputStr().trim().toUpperCase());
+        if (StringUtil.isWord(retrievalVO.getInputStr())){
+            retrievalVO.setInputStr(retrievalVO.getInputStr().trim().toUpperCase());
+        }
         switch (retrievalVO.getType()) {
             case 1:
                 retrievalDTO.setLisNames(getLisPacks(retrievalVO.getInputStr()));
@@ -202,7 +205,10 @@ public class RetrievalFacade {
      */
     public List<StaticKnowledgeIndexDTO> staticKnowledgeIndex(StaticKnowledgeIndexVO staticKnowledgeIndexVO) {
         List<StaticKnowledgeIndexDTO> retList = Lists.newLinkedList();
-        String inputStr = staticKnowledgeIndexVO.getInputStr().trim().toUpperCase();
+        String inputStr = staticKnowledgeIndexVO.getInputStr();
+        if (StringUtil.isWord(staticKnowledgeIndexVO.getInputStr())){
+            inputStr = staticKnowledgeIndexVO.getInputStr().trim().toUpperCase();
+        }
         List<Integer> types = staticKnowledgeIndexVO.getTypes();
 
         //TODO 诊断

+ 32 - 7
src/main/java/com/diagbot/util/StringUtil.java

@@ -65,7 +65,7 @@ public class StringUtil {
      */
     public static String remove_ctl(String str) {
         String trim = "";
-        if(StringUtils.isNotEmpty(str)){
+        if (StringUtils.isNotEmpty(str)) {
             trim = str.replaceAll("\r|\n|\r\n", "").trim();
         }
         return trim;
@@ -195,11 +195,11 @@ public class StringUtil {
      * @param target
      * @return
      */
-//    public static boolean isSameContent(List<String> source, List<String> target) {
-//        Set<String> sourceSet = Sets.newHashSet(source);
-//        Set<String> targetSet = Sets.newHashSet(target);
-//        return Sets.difference(sourceSet, targetSet).isEmpty() && Sets.difference(targetSet, sourceSet).isEmpty();
-//    }
+    //    public static boolean isSameContent(List<String> source, List<String> target) {
+    //        Set<String> sourceSet = Sets.newHashSet(source);
+    //        Set<String> targetSet = Sets.newHashSet(target);
+    //        return Sets.difference(sourceSet, targetSet).isEmpty() && Sets.difference(targetSet, sourceSet).isEmpty();
+    //    }
 
     /**
      * 解析时间
@@ -231,7 +231,7 @@ public class StringUtil {
      * @param datetime
      * @return
      */
-    public static Date parseDateTime(String datetime,String[] dateFormats) {
+    public static Date parseDateTime(String datetime, String[] dateFormats) {
         Date date = null;
         try {
             datetime = remove_ctl(datetime);
@@ -249,4 +249,29 @@ public class StringUtil {
         }
     }
 
+    /**
+     * 是否是纯字母
+     *
+     * @param word
+     * @return
+     */
+    public static Boolean isWord(String word) {
+        Boolean isWord = false;
+        if (word.trim().matches("[a-zA-Z]+")) {
+            isWord = true;
+        }
+        return isWord;
+    }
+
+    // 测试主函数
+    public static void main(String args[]) {
+        System.out.println(StringUtil.isWord("  "));
+        System.out.println(StringUtil.isWord(""));
+        System.out.println(StringUtil.isWord("高e"));
+        System.out.println(StringUtil.isWord("e e"));
+        System.out.println(StringUtil.isWord("ee"));
+        System.out.println(StringUtil.isWord("   ee   "));
+        System.out.println(StringUtil.isWord("Gao"));
+    }
+
 }