대괄호 안에 데이터를 입력하는 방법은 무엇입니까?

대괄호 안에 데이터를 입력하는 방법은 무엇입니까?

내 .log 파일에는 다음과 같은 유형의 데이터가 있습니다.

Cell[BoxData["0.8693473380926441`"]
Cell[BoxData["100.40266203596555`"]
Cell[BoxData["23.338724857049048`"]
Cell[BoxData["0.25720321805387686`"]
Cell[BoxData["66.85236878385265`"]

예를 들어 숫자를 찾고 싶습니다.

0.8693473380926441
100.40266203596555
23.338724857049048
0.25720321805387686
66.85236878385265

시도해 보았지만 grep -Po '\[.*?]'브래킷 하나만 제거되었습니다. 어떤 도움이라도 대단히 감사하겠습니다.

답변1

awk더 나은 점은 다음과 같습니다.

awk -F '["`]' '{print $2}' file

필드 구분 기호를 "물결표 또는 물결표로 설정한 다음 두 번째 열/필드를 인쇄합니다.

산출:

0.8693473380926441
100.40266203596555
23.338724857049048
0.25720321805387686
66.85236878385265

답변2

grep을 통해 자신이 정말로 원하는 것이 무엇인지 알아보세요. 당신이 원하는 것은 숫자뿐입니다. 숫자, 마침표 및 숫자가 필요합니다.

egrep  '[0-9]+\.[0-9]+' -o foo.txt

-o"전체 줄이 아닌 일치하는 부분만 인쇄하세요" 라고 되어 있습니다 .

답변3

아래 언급된 명령을 사용해 보았는데 잘 작동했습니다.

 sed 's/.*\["//g' filename| sed 's/`"\]//g'

산출

0.8693473380926441
100.40266203596555
23.338724857049048
0.25720321805387686
66.85236878385265

답변4

예시가 아닌 주제에 관한 질문에 누구나 답할 기회가 있습니다. "[nnn]"의 숫자를 가져오기 위해 awk를 사용하려고 하는데 awk -F'\[' '{print $2}' | awk -F'\]' '{print $1}’작동하는 동안 정말 보기 흉해 보입니다. 시도해 보았 -F’[[]]’으나 -F’[\[\]]’그 중 아무 것도 작동하지 않았습니다.

관련 정보