저는 초급 python 프로그래머입니다. 정규식을 사용하여 목록에 추가 할 그룹을 만들려고합니다. 내가 뭘 원하는지 여부를 하나의 정규식으로 덮여있을 수 있는지, 아니면 내가 하나 이상의 정규식을 통해 텍스트를 전달해야하는지 잘 모르겠습니다.regex를 사용하여 빈 그룹을 추가하십시오.
테스트 데이터 :
궁시렁 궁시렁 0.003 40 40.00
yadayada 나중에 55
yaaaaaaya 100.0000 4
내 정규식 : 내가 얻을
(\w+ *\w* *\w*) (\d*\.*\d*) *(\d*\.*\d*) *(\d*\.*\d*)\n
그룹 :
'궁시렁 궁시렁', '0.003', '40', '40.00'
은 '100.0000', '비어있는 빈
'yaaaaaaya ','나중에 yadayada ''55 ' 4 ', 빈
하지만 내가 원하는 그룹은 다음과 같습니다
'궁시렁 궁시렁 ','0.003가 ','40 ','40.00 '
가'나중에 yadayada ', 빈, 그들을 PTY, '55 '
'yaaaaaaya '빈'100.0000 ','4 '
비어 (\ D *. * \ D *)기를 도입하는 정규식을 변경하는 것이 가능 그 그룹 중 3 개 미만의 라인에? 번호 그룹이 "오른쪽 정렬"되었습니까?
추가하려고 했습니까? 처음 두 (\ d *) 그룹의 끝으로 이동하지만 동일한 빈 그룹을 가져옵니다.
공백 그룹 일치를 반환하는 정규식 동작을 변경하지 않으며, 원래의 것과 같이 치명적인 백 트랙킹을하는 경향이 있습니다. –
@TimPietzcker 확실하게, downvoting하기 전에 테스트 해주세요. https://regex101.com/r/dtKcH4/1 정규 표현식이 차선 이하라고 동의합니다. 당신이 그를 위해 다시 쓰고 싶다면, 계속하십시오. – jaytea
물론 테스트를 마쳤습니다. 링크 된 예제를 확인하십시오. 동일한 문제가 있습니다. 이제 빈 그룹은 그룹 4 대신 그룹 2이지만, 여기에도 있습니다. –