>

다음 요구 사항에 따라 사용자 이름을 확인하고 싶습니다 :

<올>
  • 캐릭터 또는 디지털 만 허용
  • 최소한의 캐릭터
  • 나는 시도했다

    public boolean validateFormat(String input){
            return Pattern.compile("^[A-Za-z0-9]+$").matcher(input).matches();   
     }
    
    

    어떻게하면 되나요?


    • 답변 # 1

      /^[A-Za-z0-9]+(?:[ _-][A-Za-z0-9]+)*$/
      
      

    • 답변 # 2

      이 정규식을 사용해보십시오 :

      ^(\w|\d)+$
      
      

      ^  문자열의 시작을 나타냅니다

      $  문자열의 끝을 나타냅니다

      \w  모든 단어 문자를 의미합니다

      \d  모든 숫자를 의미합니다

      |  논리 OR 연산자입니다

      어쨌든 regex101.com과 같은 온라인 정규식 테스터를 사용하는 것이 좋습니다. 정규 표현식을 빠르게 테스트하는 것이 매우 유용합니다.

      도움이 될 수 있기를 바랍니다!

      == 업데이트 ==

      자바 코드에서 :

      final String regex = "^(\\w|\\d)+$";
      final String string = "myCoolUsername12";
      final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
      final Matcher matcher = pattern.matcher(string);
      if(matcher.matches()) {
         // if you are interested only in matching the full regex
      }
      // Otherwise, you can iterate over the matched groups (including the full match)
      while (matcher.find()) { 
          System.out.println("Full match: " + matcher.group(0));
          for (int i = 1; i <= matcher.groupCount(); i++) {
              System.out.println("Group " + i + ": " + matcher.group(i));
          }
      }
      
      

    관련 자료

  • 이전 algorithm - 그래프의 물리적 표현은 다음과 같이 표현됩니다
  • 다음 python - 저장된 CNN에서 교육 이미지에 할당 된 클래스 확률을 추출 할 수 있습니까?