캡쳐되지 않은 그룹의 작동 방식을 잘 모르겠습니다. 나는이 결과를 산출하기위한 정규식을 찾고있다 : 5.214
. 나는 아래의 정규 표현식이 작동 할 것이라고 생각했지만 비 캡처 그룹을 포함한 모든 것을 대체하고있다. 캡처 그룹 만 바꾸려면 어떻게 정규식을 작성할 수 있습니까?Ruby 정규식 - gsub 만 캡쳐 된 그룹
"5,214".gsub(/(?:\d)(,)(?:\d)/, '.')
# => ".14"
내 원하는 결과 : 당신은 할 수 없습니다
"5,214".gsub(some_regex)
#=> "5.214
만약 이것이 그는 단지 쉼표 만 바꾸는 것이 아닌가? – hwnd
쉼표가 다른 컨텍스트에서 사용되는 긴 문자열이있을 수 있습니다. 예 : '나는 가게에 갔다. 그리고 나는 1,200 달러에 무언가를 샀다.'다음과 일치하는 쉼표 만 바꾸기를 원합니다. '\ d, \ d' – diasks2
문자열에 소수점이있는 경우 그 문자가 혼합됩니다. 로케일을 수천명에'.'을 사용하는 언어로 변경하려면 XY 문제를 묻는 중입니다. 로케일 라이브러리를 사용하면 처음부터 다시 시도하는 것보다 훨씬 강력한 솔루션을 제공 할 수 있습니다. – sawa