移动字符串中的字母字符
Shift alphabetical characters in string
假设我有一个字符串:
s <- 'hello world zzz'
我想将字母字符向上移动一位。
所以:
a
变为 b
b
变为 c
c
变为 d
d
变为 e
等等...
w
变为 x
x
变为 y
y
变为 z
并且:
z
变为 a
另一个条件是,如果有不在字母表中的字符(在本例中为 space),则保持字符不变,因此 space 保持为space.
这一切都可能吗?
我在这里想要的输出是:
ifmmp xpsme aaa
我试过:
new <- c()
for (i in s)
{
new <- c(new, 'abcdefghijklmnopqrstuvwxyz'[which('abcdefghijklmnopqrstuvwxyz' == i) + 1])
}
print(new)
但是它不起作用...它什么都不输出。
有什么办法吗?
chartr("abcdefghijklmnopqrstuvwxyz", "bcdefghijklmnopqrstuvwxyza", 'hello world zzz')
# [1] "ifmmp xpsme aaa"
(我从未有理由使用的功能...)
假设我有一个字符串:
s <- 'hello world zzz'
我想将字母字符向上移动一位。
所以:
a
变为b
b
变为c
c
变为d
d
变为e
等等...
w
变为x
x
变为y
y
变为z
并且:
z
变为a
另一个条件是,如果有不在字母表中的字符(在本例中为 space),则保持字符不变,因此 space 保持为space.
这一切都可能吗?
我在这里想要的输出是:
ifmmp xpsme aaa
我试过:
new <- c()
for (i in s)
{
new <- c(new, 'abcdefghijklmnopqrstuvwxyz'[which('abcdefghijklmnopqrstuvwxyz' == i) + 1])
}
print(new)
但是它不起作用...它什么都不输出。
有什么办法吗?
chartr("abcdefghijklmnopqrstuvwxyz", "bcdefghijklmnopqrstuvwxyza", 'hello world zzz')
# [1] "ifmmp xpsme aaa"
(我从未有理由使用的功能...)