RegexExtract를 사용하여 텍스트에서 숫자 값을 추출합니다. 아래 링크에서 다음 정규 표현식 [0-9]+(\.[0-9][0-9]?)?
을 사용했지만 소수점 이하 두 개의 값만 추출하는 것으로 나타났습니다. 나는 그 앞에 숫자가 필요하다. 왜 작동하지 않는지 확실하지 않습니다. 나는 그것의 다른 변이를 또한 시도했다.Regex - 문자열에서 숫자 2 자릿수를 추출합니다.
Simple regular expression for a decimal with a precision of 2
내가로부터 당겨 오전 텍스트는 항상 같은 길이 아닌 약 100 자 함께입니다. 텍스트에서 나는 수치를 당길 필요가있는 다음은 만 (X.XX) : 도 (Gmax) = 2.3428
ThisWorkbook.Worksheets(Warn.MachBox.Value & "_C1").Range("B" & Duncan2 + 1).Value = RegexExtract(ThisWorkbook.Worksheets(Warn.MachBox.Value & "_C1").Range("C" & Duncan2 + 1).Value, "Gmax = [0-9]+(\.[0-9][0-9]?)?")
내가 가지고있는 현재의 방법과 내가 시도한 다른 유사 소수점 앞의 값을 제외하고는 0.34 만 반환합니다. 나는 2.34가 필요하다.
모든 의견을 크게 환영합니다. 감사!
편집 : RegexExtract 함수 정보를 추가하지 않았습니다. 이 작업은 아래의 링크에서 발견되었다 : How to extract text within a string of text
(\ d +) (? : \. (\ d {1,2}))를 시도 했습니까? 2, 34를 반환했습니다. 다른 제안을 시도했지만 제대로 수정하지 않았습니다 (\ d +) (\. \ d {1,2})? 2, 0.34를 반환했습니다. – jmeddy
@jmeddy 네, 그게 맞고 내가 쓴 것을 확인해줍니다. 점과 일치 시키길 원하는지 선택할 수 있습니다. – Keelan
감사합니다, 카밀. 2와 .34 사이에 쉼표와 공백이있는 이유는 무엇입니까? 도움을 주셔서 감사합니다, 난 정규식을 사용하는 새로운입니다. – jmeddy