Open In App

Perl | substr() function

Last Updated : 25 Jun, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

substr() in Perl returns a substring out of the string passed to the function starting from a given index up to the length specified. This function by default returns the remaining part of the string starting from the given index if the length is not specified. A replacement string can also be passed to the substr() function if you want to replace that part of the string with some other substring.
This index and length value might be negative as well which changes the direction of index count in the string.
For example, if a negative index is passed then substring will be returned from the right end of the string and if we pass the negative length then the function will leave that much of the characters from the rear end of the string.

Syntax: substr(string, index, length, replacement)
Parameters:

  • string: string from which substring is to be extracted
  • index: starting index of the substring
  • length: length of the substring
  • replacement: replacement substring(if any)

Returns: the substring of the required length

Note: The parameters ‘length’ and ‘replacement’ can be omitted.

Example 1




#!/usr/bin/perl
  
# String to be passed
$string = "GeeksForGeeks";
  
# Calling substr() to find string 
# without passing length
$sub_string1 = substr($string, 4);
  
# Printing the substring
print "Substring 1 : $sub_string1\n";
  
# Calling substr() to find the 
# substring of a fixed length
$sub_string2 = substr($string, 4, 5);
  
# Printing the substring
print "Substring 2 : $sub_string2 ";


Output :

Substring 1 : sForGeeks
Substring 2 : sForG 

Example 2




#!/usr/bin/perl
  
# String to be passed
$string = "GeeksForGeeks";
  
# Calling substr() to find string 
# by passing negative index
$sub_string1 = substr($string, -4);
  
# Printing the substring
print "Substring 1 : $sub_string1\n";
  
# Calling substr() to find the 
# substring by passing negative length
$sub_string2 = substr($string, 4, -2);
  
# Printing the substring
print "Substring 2 : $sub_string2 ";


Output :

Substring 1 : eeks
Substring 2 : sForGee 


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads