To check for scalar strings, see checkString
.
checkCharacter(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)check_character(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
assertCharacter(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE,
.var.name = vname(x),
add = NULL
)
assert_character(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE,
.var.name = vname(x),
add = NULL
)
testCharacter(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
test_character(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
expect_character(
x,
n.chars = NULL,
min.chars = NULL,
max.chars = NULL,
pattern = NULL,
fixed = NULL,
ignore.case = FALSE,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE,
info = NULL,
label = vname(x)
)
Depending on the function prefix: If the check is successful, the functions
assertCharacter
/assert_character
return
x
invisibly, whereas
checkCharacter
/check_character
and
testCharacter
/test_character
return
TRUE
.
If the check is not successful,
assertCharacter
/assert_character
throws an error message,
testCharacter
/test_character
returns FALSE
,
and checkCharacter
/check_character
return a string with the error message.
The function expect_character
always returns an
[any]
Object to check.
[integer(1)
]
Exact number of characters for each element of x
.
[integer(1)
]
Minimum number of characters for each element of x
.
[integer(1)
]
Maximum number of characters for each element of x
.
[character(1L)
]
Regular expression as used in grepl
.
All non-missing elements of x
must comply to this pattern.
[character(1)
]
Substring to detect in x
. Will be used as pattern
in grepl
with option fixed
set to TRUE
.
All non-missing elements of x
must contain this substring.
[logical(1)
]
See grepl
. Default is FALSE
.
[logical(1)
]
Are vectors with missing values allowed? Default is TRUE
.
[logical(1)
]
Are vectors with no non-missing values allowed? Default is TRUE
.
Note that empty vectors do not have non-missing values.
[integer(1)
]
Exact expected length of x
.
[integer(1)
]
Minimal length of x
.
[integer(1)
]
Maximal length of x
.
[logical(1)
]
Must all values be unique? Default is FALSE
.
[logical(1)
]
Elements must be sorted in ascending order. Missing values are ignored.
[character(1)
]
Check for names. See checkNamed
for possible values.
Default is “any” which performs no check at all.
Note that you can use checkSubset
to check for a specific set of names.
[logical(1)
]
If set to FALSE
(default), all types of missing values (NA
, NA_integer_
,
NA_real_
, NA_character_
or NA_character_
) as well as empty vectors are allowed
while type-checking atomic input.
Set to TRUE
to enable strict type checking.
[logical(1)
]
If set to TRUE
, x
may also be NULL
.
In this case only a type check of x
is performed, all additional checks are disabled.
[character(1)
]
Name of the checked object to print in assertions. Defaults to
the heuristic implemented in vname
.
[AssertCollection
]
Collection to store assertion messages. See AssertCollection
.
[character(1)
]
Extra information to be included in the message for the testthat reporter.
See expect_that
.
[character(1)
]
Name of the checked object to print in messages. Defaults to
the heuristic implemented in vname
.
This function does not distinguish between
NA
, NA_integer_
, NA_real_
, NA_complex_
NA_character_
and NaN
.
Other basetypes:
checkArray()
,
checkAtomic()
,
checkAtomicVector()
,
checkComplex()
,
checkDataFrame()
,
checkDate()
,
checkDouble()
,
checkEnvironment()
,
checkFactor()
,
checkFormula()
,
checkFunction()
,
checkInteger()
,
checkIntegerish()
,
checkList()
,
checkLogical()
,
checkMatrix()
,
checkNull()
,
checkNumeric()
,
checkPOSIXct()
,
checkRaw()
,
checkVector()
testCharacter(letters, min.len = 1, any.missing = FALSE)
testCharacter(letters, min.chars = 2)
testCharacter("example", pattern = "xa")
Run the code above in your browser using DataLab