질문 요약 :Perl을 사용하여 지정된 형식의 텍스트를 정규식으로 구문 분석하는 방법?
텍스트 파일을 Perl에서 두 개의 "해시"로 구문 분석하는 방법. 하나는 (X = Y) 부분에서 가져온 키 - 값 쌍을 저장하고 다른 부분은 (X : Y) 부분에서 가져옵니다.
1=9
2=2
3=1
4=6
2:1
3:1
4:1
1:2
1:3
1:4
3:4
3:2
두 파일은 한 파일에 저장되며 두 자리 사이의 기호 만 차이를 나타냅니다.
============================================== =================
나는 지난 학기 동안 Perl을 배우면서 약 30 시간을 보내고 "Perl 과제를"첫 번째, 임시, 추악한 "방식으로 끝내야합니다.
솔직히 말해서,이 섹션에 대한 내 결과가 7/10인데, 나는 이것이 만족스럽지 않다. 규칙적인 표현식을 사용하여 정규식을 사용하려고 애쓰는 나의 가난한 기억을 회상하기 때문이다. 이 :
1= (the last digit in your student ID,or one if this digit is zero)
2= (the second last digit in your student ID,or one if this digit is zero)
3= (the third last digit in your student ID, or one if this digit is zero)
4= (the forth last digit in your student ID, or one if this digit is zero)
2:1
3:1
4:1
1:2
1:3
1:4
2:3 (if the last digit in your student ID is between 0 and 4) OR
3:4 (if the last digit in your student ID is between 5 and 9)
3:2 (if the second last digit in your student ID is between 0 and 4) OR
4:3 (if the second last digit in your student ID is between 5 and 9)
An example of the above configuration file: if your student ID is 10926029, it has to be:
1=9
2=2
3=1
4=6
2:1
3:1
4:1
1:2
1:3
1:4
3:4
3:2
할당이 단순화 알고리즘 페이지 랭크 (PageRank)의 계산에 관하여이었다 그래서 나는 5 분에서 그 부분에 대한 답 함께했다. 그러나, 시간을 쌓아 올리는 것은 텍스트 파싱 부분이었습니다.
텍스트 (= 페이지 랭크)의 첫 번째 부분은 페이지와 해당 pageranks이다.
번째 부분 (는 Fromnode : ToNode)는 두 페이지 간의 링크의 방향을 나타낸다. 더 나은 이해를 위해
, 내 웹 사이트로 이동하여 요구 사항 파일과 내 펄 스크립트를 확인하시기 바랍니다 here
그래서 나는 그것이 내가 얼마나 바보 볼 전혀 어렵지 않다라고 생각 스크립트의 엄청난 댓글이 나는 노 코멘트로 "결과 7/10을"아무 것도 없어하지만
: 내 솔루션 :(이 페이지에서 여전히 경우
, 나는 그래서 여기에이 질문을 왜 나를 정당화하자 유니에서.
나는 유니 (uni)를 배우기 위해 공부하고 있지 않다. 나는 혼자 학습하고있다.
그래서 Perl 전문가가이 문제를 해결하기위한 올바른 방향을 안내 할 수 있기를 바랍니다. 내 어리석은 해결책은 일종의 "일반"이었고 Java, C# 등에서도 작동 할 것입니다. Perl의 성격과는 거리가 멀다고 확신합니다.
그리고, 가능하면 내가 거기까지 "학습 펄 ==> 프로그래밍 펄 ==> 마스터 펄 '을 통해 갈 필요가 같은 날 솔루션의 수준을 알려 주시기 바랍니다 :) 어떤을위한감사합니다 힌트 및 제안.
편집 1 :
나는 또 다른 질문은 게시하지만 당신이 무슨 뜻인지 꽤 많은 일들이 내 유니 :(
나는 한 가지 진지한 제안을 가지고있다 : 교수님에게 가서 문제를 조금이라도 이야기하고 싶다고 말한다. 학년을 변경하려는 것이 아니라 물질을 더 잘 이해할 수 있다는 것을 분명히하십시오. _ 대부분의 선생님들은 그만큼 거절하고 있습니다. – Telemachus
@ 텔레 마커스 :이 유니에서 수년간 공부 한 후에 나는 교수님을 쫓지 않는 한 이런 일은 일어나지 않을 것이라고 확신합니다. 직접적인 피드백이 필요합니다. 나는 그것이 다른 누군가에 의해 표시되었다는 것을 안다. 그들은 이것을 과거의 문제로 인식했을 것입니다. 나는이 병이 너무 심하다. 솔직히 말해서, 나는 그들이 더 나은 해결책을 보여줄 것이라고 생각하지 않습니다. ( –
당신의 질문은 막을 수없는 것입니다. 당신은 무엇을 요구하고 있습니까? 나는 당신이 원하는 것을 알아 내는데 단지 45 분을 보내고 싶지 않습니다. 이상한 사이트에서 알려지지 않은 zip 파일을 다운로드하고 싶지 않은 경우 응답을 원할 경우 짧고 명확한 질문을 작성하고 약간의 코드를 제공하십시오 – daotoad