Test and Replace Characters (TSTRPLC)

Instruction Syntax

Op Code (Hex) Operand 1 Operand 2
10A2 Receiver Replacement
Operand 1: Character variable scalar.

Operand 2: Character scalar.

Description:

The character string value represented by operand 1 is tested byte by byte from left to right. Until a byte with a value in the range of hex F1 to hex F9 (inclusive) is found, each byte that has a value outside that range is assigned a byte value equal to the leftmost byte of operand 2. Thus any byte to the left of the leftmost nonzero zoned decimal data value is replaced with the leftmost byte value of operand 2. Both operands must be character strings. Only the first character of the replacement string is used in the operation.

The operation stops when the first nonzero zoned decimal digit is found or when all characters of the receiver operand have been replaced.

Authorization Required

  • None

Lock Enforcement

  • None

Exceptions

  • 06 Addressing
    • 0601 Space Addressing Violation
    • 0602 Boundary Alignment
    • 0603 Range
  • 08 Argument/Parameter
    • 0801 Parameter Reference Violation
  • 10 Damage Encountered
    • 1004 System Object Damage State
    • 1044 Partial System Object Damage
  • 1C Machine-Dependent
    • 1C03 Machine Storage Limit Exceeded
  • 20 Machine Support
    • 2002 Machine Check
    • 2003 Function Check
  • 22 Object Access
    • 2201 Object Not Found
    • 2202 Object Destroyed
    • 2203 Object Suspended
    • 2208 Object Compressed
    • 220B Object Not Available
  • 24 Pointer Specification
    • 2401 Pointer Does Not Exist
    • 2402 Pointer Type Invalid
  • 2E Resource Control Limit
    • 2E01 User Profile Storage Limit Exceeded
  • 36 Space Management
    • 3601 Space Extension/Truncation
  • 44 Protection Violation
    • 4401 Object Domain or Hardware Storage Protection Violation
    • 4402 Literal Values Cannot Be Changed