문자열에서 하위 문자열을 검색하고 다음 단어를 반환합니다.

문자열에서 하위 문자열을 검색하고 다음 단어를 반환합니다.

키워드를 검색하고 다음 단어를 반환하려는 문자열이 있습니다.

"SELECT \"city\",\"temp_lo\",\"temp_hi\",\"date\" FROM schema_name.\"weather_7\""

"schema_name"을 반환하려고 하는데 유일한 표시 텍스트는 앞의 "FROM" 문자열입니다.

감사해요

답변1

주어진 정확한 설정을 보려면 다음을 시도하십시오.

sed 's/^.*FROM //; s/\..*$//' file

답변2

일련 schema_name의 가정단어 문자, grep이 Perl 호환 정규식(PCRE)을 지원하는 경우 다음을 사용할 수 있습니다.

grep -Po 'FROM\s+\K\w+'

전임자.

echo '"SELECT \"city\",\"temp_lo\",\"temp_hi\",\"date\" FROM schema_name.\"weather_7\""' |
  grep -Po 'FROM\s+\K\w+'
schema_name

관련 정보