간단 한 문자열 처 리 는 정규 표현 식 을 사용 하 는 것 을 피해 야 한다.
4147 단어 정규 표현 식
Perl 에서 간단 한 문자열 작업 은 특정한 함수,예 를 들 어 index,rindex,substr 와 tr//등 을 사용 해 야 합 니 다.
1.문자열 비교 연산 자
#
if ($answer eq 'yes' ) { somesting_wonderful() }
2.index 와 rindex 로 하위 문자열 추출
index 조작 부 호 는 비교적 긴 문자열 에서 비교적 짧 은 문자열 의 위 치 를 찾 을 수 있 습 니 다.그리고 rindex 는 가장 오른쪽 끝 에서 위 치 를 정 하지만 위치의 계산 방식 은 왼쪽 에서 오른쪽으로 인식 합 니 다.
# $big_str $little_str , 0
my $pos = index $big_str,$little_str;
# big_str , $little_str
my $pos = rindex $big_str,$little_str;
3.substr 로 하위 문자열 추출 또는 수정
substr 연산 자 는 주어진 시작 위치 와 문자열 길이 에 따라 문자열 의 일부분 을 추출 하 는 역할 을 합 니 다.길이 가 지정 되 지 않 으 면 지정 한 위치 부터 문자열 끝까지 문자열 을 추출 합 니 다.
# “Perl”
my $perl = substr "It's a Perl World",7,4;
# “Perl World”
my $perl_world = substr "It's a Perl World",7;
substr 표현 식 을 할당 작업 의 왼쪽 에 놓 으 면 문자열 교체 작업 입 니 다.즉,오른쪽 문자열 은 substr 가 지정 한 위치 와 길이 의 문자열 로 바 꿉 니 다.이런 방법 은 매우 우아 합 니 다.
# world
my $world = "It's a Perl World";
substr($world,7,4) = "Mad Mad Mad Mad";
index 와 substr 를 결합 하면 s///교체 와 유사 한 기능 을 실현 할 수 있 습 니 다.다만 교체 만 한다 면 차라리 s//를 사용 하 는 것 이 빠 를 뿐만 아니 라 의미 도 명확 하 다.
4.단일 문자 일괄 변환
Perl 과 tr///연산 자,즉 문자열 변환 연산 자 를 잊 지 마 세 요.형식 이 더 가 깝 지만 정규 표현 식 이 아니 라 문자 간 의 전환 일 뿐 입 니 다.tr///는/g 옵션 이 없습니다.기본 값 은 전역 교체 이기 때 문 입 니 다.
문자열 의 일부분 만 바 꾸 려 면 substr 로 범 위 를 제한 할 수 있 습 니 다.
substr($string,0,10) =~ tr/a/b/;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
awk 상용 명령awk 는 모든 입력 줄 을 하나의 기록 으로 인식 하고 그 줄 의 모든 단어 도 메 인 을 하나의 필드 로 인식 합 니 다. ARGC 명령 줄 에 awk 스 크 립 트 가 들 어 오 는 매개...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.