REPLACE

문자 치환

REPLACE는 문자열 IN1의 문자(여기서 P는 대체할 첫 번째 위치를 나타내고 L은 대체할 문자 수를 나타냄)를 IN2에 의해 지정된 문자로 치환합니다. 결과는 출력 변수에 작성됩니다.

파라미터

입력

IN1 (STRING)

시작 입력 문자열

IN2 (STRING)

치환 문자열

L (INT)

치환할 입력 문자열의 문자 수

P (INT)

치환할 입력 문자열의 시작 위치입니다. 여기서 1은 문자열의 첫 번째 문자입니다.

출력

정의되지 않은 출력 (STRING)

결과 문자열

주석

  • 이 명령을 UTF-8 문자열과 함께 사용하는 경우, 데이터 유형 STRING에서 UTF-8 문자열에 대한 메모를 참조하십시오.

  • 문자열이 [Type] 필드에서 정의한 입력 변수(input_string_1input_string_2) 길이보다 길면 에러가 발생합니다([모니터] > [특수 플래그 · 레지스터] > [기본 에러 메세지]

에러 플래그

sys_bIsOperationErrorHold(TRUE로 전환되어 TRUE로 유지됨)

입력 또는 출력에 적용된 문자열이 유효하지 않은 문자열인 경우

sys_bIsOperationErrorNonHold(스캔 1회에 대해 TRUE로 전환)

입력 또는 출력에 적용된 문자열이 유효하지 않은 문자열인 경우

POU 헤더

이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.

	VAR
		output_value: STRING[32]:='';
	END_VAR

POU 본문

이 예에서 정수 값은 펑션의 입력 접점 핀에 직접 입력됩니다. 하지만 POU 헤더에서 변수를 선언할 수 있습니다. POU 헤더 또는 접점 핀에서 STRING 값은 따옴표 안에 있을 수 있습니다. 여기서 STRING 'MrSpock'의 'c'는 'o'로 교체되어 'MrSpook'가 생성됩니다.

LD 본문

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_VARIN,,'MrSpock',6,1,8,3,);
B(B_VARIN,,'o',6,2,8,4,);
B(B_VARIN,,1,6,3,8,5,);
B(B_VARIN,,6,6,4,8,6,);
B(B_VAROUT,,output_value,14,1,16,3,);
B(B_F,REPLACE!,Instance,8,0,14,6,,?DIN1?DIN2?DL?DP?C);
L(1,0,1,6);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

IL 본문

최종 수정일: 2024-03-22이 페이지에 대한 피드백Panasonic 직통 전화