1
정규 표현식을 사용하여 문자열을 구문 분석해야합니다.정규 표현식 OR 표현식 (|)을 사용하는 VBScript
대부분의 시간은, 문자열은 식 표현이 자신 중 하나를 표현하고자하여
^([a-zA-Z\-\,0-9\(\)\#\/ \.]{1,25})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})
될 것이라고 있도록
^([a-zA-Z\-\,0-9\(\)\#\/ \.]{1,21})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})
때때로, 문자열이 추가로 4 개 문자를 포함 할 필요가
를 사용하여 구문 분석 할 수 각각의 문자열에서 작업하십시오. 첫 번째 표현식은 두 번째 표현식을 의도 한 문자열에서도 기술적으로 유효하지만 표현식의. {0,9} 섹션은 4자를 벗어납니다.A quick explanation of the expression: Subset 1: 1 - 21 (or 25 characters) any characters a-z any characters A-Z the dash, the comma any digits 0-9 the open and close parenthesis, the hash tag, forward slash, space and period. Subsets 2-7 Any characters (up to 9 total)
내가
^([a-zA-Z\-\,0-9\(\)\#\/ \.]{1,21|25})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})
또는
^([a-zA-Z\-\,0-9\(\)\#\/ \.]{1,21}|{1,25})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})(.{0,9})
나는이 시도하고 작동하지 않았다 아래의 표현 같은 것을 기대했다. 다른 사람이라도 아이디어가 있으십니까?
또는 1의 그룹에서 분할 21 자 및 4 자의 선택적인 그룹 :^([a-zA-Z \ - \, 0-9 \ (\) \ # \/\.] {1,21} ([a-zA- 마지막 4 문자가있는 두 번째 캡처 그룹을 사용하는 대신에 (.0-9 \ (\) \ # \/\.] {4})?) (. {0,9}) {6} 응용할 수 있는. – AutomatedChaos
@AutomatedChaos 이는 22-24 자의 그룹과도 일치합니다. 그것은 OP와 맞지 않는'... {1,25}'과 같습니다. 사실 실제 문제는 패턴이 제대로 정의되어 있지 않다는 것입니다. (마지막 0 - 54 문자를 6 개의 그룹으로 나누는 방법을 어떻게 알 수 있습니까?) 그러나 추가 정보없이 이것이 최선의 대답입니다. –
네, 맞습니다. 첫 번째는 19 개의 긴 문자열과 일치 할 수 있고 두 번째는 4 개의 긴 문자열로 길이가 23 인 문자열과 일치 할 수 있습니다. 이 질문을 볼 때 모든 문제가 정규 표현식으로 해결하기에 적합하지는 않습니다. – AutomatedChaos