1
Word 매크로에서 정규식을 직접 사용할 수 있습니까?정규식을 사용하여 Word 매크로에서 숫자 값 확인
문자열에 숫자 만 들어 있고 다음 코드가 작동하지 않는지 확인하고 싶습니다.
isNumber = RegEx.IsMatch("234", "[0-9]+$")
단순히 true 또는 false를 반환하면됩니다.
Word 매크로에서 정규식을 직접 사용할 수 있습니까?정규식을 사용하여 Word 매크로에서 숫자 값 확인
문자열에 숫자 만 들어 있고 다음 코드가 작동하지 않는지 확인하고 싶습니다.
isNumber = RegEx.IsMatch("234", "[0-9]+$")
단순히 true 또는 false를 반환하면됩니다.
코드 내에 VBScript.Regexp
개체의 인스턴스를 만들 수 있지만 더 쉬운 해결 방법은 기존 VBA 함수 IsNumeric
을 사용하는 것입니다. 두 방법은 아래에 포함되어
Sub testNumeric()
'Use IsNumeric
MsgBox (IsNumeric("12345")) 'Returns true
MsgBox (IsNumeric("123a")) 'Returns false
'Alternatively, using Regexp Object
Dim regexp
Set regexp = CreateObject("VBScript.Regexp")
regexp.Pattern = "[0-9]+$"
MsgBox (regexp.test("12345")) 'Returns true
MsgBox (regexp.test("123a")) 'Returns false
End Sub
정규식 패턴이 엄격하게 숫자를 반환하지 않습니다뿐만 아니라 (즉, 테스트 "A123을"true를 반환) 번호로 끝나는 모든 문자열. 정규식 검사를 엄격하게 수행하려면 패턴은 ^[0-9]+$
일 수 있습니다. 이것을 지적 해 주신 @mike에게 감사드립니다.
Beautiful, Thanks! – ukie