Perl에서 줄 끝부터 특정 문자까지 문자를 제거하는 방법

Perl에서 줄 끝부터 특정 문자까지 문자를 제거하는 방법

내 문자열은 다음과 같습니다

$varin="wer.try.iuy.oiu.qert"

문자열 끝부터 "."까지 문자를 제거하고 싶습니다. 만나다.

예상 출력:

wer.try.iuy.oiu

이것을 사용해 보았지만 chop()아무것도 substr 작동하지 않습니다. 마지막 문자만 제거됩니다.

도와주세요:)

답변1

정규식은 다음과 같은 문제를 해결하는 데 유용합니다.

$varin =~ s/\.[^.]+$//;

이는 점과 일치하고 점이 아닌 여러 개가 뒤따른 다음 문자열의 끝과 일치합니다. 그런 다음 일치하는 콘텐츠를 삭제하세요.

또 다른 방법은 마지막 .using을 찾은 rindex다음 use를 사용하여 substr점과 그 뒤의 모든 항목을 삭제하는 것입니다.

my $i = rindex($varin,'.');
$varin = substr($varin,0,$i) if $i>0;

관련 정보