substr
Extract or Replace Portions of Character Strings

### Description

Returns or replaces a vector of character strings that are substrings of the input.

### Usage

    substr(x, start, stop)
    substr(x, start, stop) <- value
    substring(text, first, last = 1000000L)
    substring(text, first, last = 1000000L) <- value

### Arguments

x | a vector of character strings.
start | a numeric vector giving the position within each element of x to be the first character in the respective substring.
stop | a numeric vector giving the position within each element of x to be the last character in the respective substring.
text | the same as x.
first | the same as start.
last | the same as stop.
value | the replacement text.

### Details

Characters within each string are numbered from 1 to nchar(string). If start (or first) is larger than the length of a string, the returned string is "".
stop (or last) can go beyond the end of the string, but only the characters from start (or first) to the end of string are returned.
A substring of characters within a string can be changed with `substr<-`. This does not change the number of characters in modified string. Instead, the number of characters changed is the minimum of the length specified by first and last, and the length of the corresponding string element of value. `substring<-` is the same as `substr<-`, except for the argument names.
Value
for substr, a character vector as long as x containing the specified portions of each character string. Any shorter vector of start and stop is replicated.
for substring, a character vector as long as the longest of text, first and last, containing the specified portions of each character string. Any shorter vector is replicated.
See Also
nchar, paste, abbreviate, regexpr.
Examples

    substr(c("Illinois", "Indiana", "Iowa"), 1, 5)
    # [1] "Illin" "India" "Iowa"
    substr(c("Illinois", "Indiana", "Iowa"), 1, c(1,2,3))
    # [1] "I"   "In"  "Iow"
    # substr doesn't replicate input string
    substr("xxxxxxxxxx", 1, 1:4)
    # [1] "x"
    # substring replicates input string to match other arguments
    substring("xxxxxxxxxx", 1, 1:4)
    # [1] "x"    "xx"   "xxx"  "xxxx"
    substring("abcde", 1:5, 1:5)
    # [1] "a" "b" "c" "d" "e"
    substring("This is a test", 6)  # start from 6th char
    # [1] "is a test"
    x <- c("abcdef", "ghijklmnop")
    substring(x, 3, 4) <- c("A","BCDF")
    x
    # [1] "abAdef"     "ghBCklmnop"
    # substitute one character in first string
    # substitute two characters in second string

Package base version 6.1.5-18
Package Index