在R中进行子串反转

时间:2017-08-29 16:41:43

标签: r

我有一个字符串,例如abcdepzxtru

我想只反转字符串的一部分,我有子字符串的开始和结束索引,比如1和5,即我需要反转abcde部分abcedpzxtru和输出应为edcbapzxtru

我不确定如何在R中进行此操作并且使用Google搜索并不是很有帮助。

3 个答案:

答案 0 :(得分:4)

使用dsc ...

return $query
    ->orderBy($request->column, $request->direction)
    ->where(function($query) use ($request, $searchColumns) {
        if($request->has('search_input')) {
            for($x = 0, $l = count($searchColumns); $x < $l; $x++) {
                if($request->search_operator == 'in') {
                    $query->whereIn($searchColumns[$x], explode(',', $request->search_input));
                } else if($request->search_operator == 'like') {
                    $query->orWhere($searchColumns[$x], 'LIKE', '%'.$request->search_input.'%');
                }
                else {
                    $query->orWhere($searchColumns[$x], $this->operators[$request->search_operator], $request->search_input);
                }
            }
        }
    })
    ->paginate(100);

答案 1 :(得分:2)

sapply(strsplit("abcdepzxtru", ""),
       function(x) paste(x[c(5:1, 6:length(x))], collapse = ""))
#[1] "edcbapzxtru"

答案 2 :(得分:2)

str <- "abcedpzxtru"
init <- 1
end <- 4
paste(c(sapply(end:init, (function(i) substr(str, i, i))), 
      substr(str,(end+1),nchar(str))), collapse = "", sep = "")

# [1] "ecbadpzxtru"