저는 Ruby의 정규 표현식을 처음 접했고 어떤 의미인지 전혀 알지 못합니다. \k<name+0>
. 내가 얻지 못할 부분은 +0
입니다.정규 표현식에서 "+0"은 무엇을 의미합니까? <name+0>?
다음은 예입니다 -이 정규 표현식 회문 일치 :
\A(?<p>(?:(?<l>\w)\g<p>\k<l+0>|\w))\z
나는 더 이상 정확하게 일치하는 +0
\k<l+0>
에서 제거하지합니다.
내 테스트 :
>> /\A(?<p>(?:(?<l>\w)\g<p>\k<l+0>|\w))\z/.match "aabbcdcbbaa"
#=> #<MatchData "aabbcdcbbaa" p:"aabbcdcbbaa" l:"c">
>> /\A(?<p>(?:(?<l>\w)\g<p>\k<l>|\w))\z/.match "aabbcdcbbaa"
#=> nil
내가 한 짓을했는지는 +0
을 제거합니다. 아직 어떤 문서 나 예제를 찾지 못했지만, 누군가 올바른 방향으로 나를 가리킬 수 있습니까?
큰 질문입니다. 그것은'\ g <...>'의 멋진 세상에 소개되었습니다. –