java去掉所有空格_如何从字符串中删除所有空格?

news/2024/11/27 8:39:35/

一般来说,我们需要一个矢量化的解决方案,所以这里有一个更好的测试示例:

whitespace

# carriage return, vertical tab, form feed

x

" x y ",           # spaces before, after and in between

" \u2190 \u2192 ", # contains unicode chars

paste0(            # varied whitespace

whitespace,

"x",

whitespace,

"y",

whitespace,

collapse = ""

),

NA                 # missing

)

## [1] " x y "

## [2] " ← → "

## [3] " \t\n\r\v\fx \t\n\r\v\fy \t\n\r\v\f"

## [4] NA

基础R方法: gsub

gsub用另一个字符串替换string(fixed = TRUE)或正则表达式(fixed = FALSE,默认值)的所有实例。要删除所有空格,请使用:

gsub(" ", "", x, fixed = TRUE)

## [1] "xy"                            "←→"

## [3] "\t\n\r\v\fx\t\n\r\v\fy\t\n\r\v\f" NA

正如DWin所指出的那样,在这种情况下fixed = TRUE不是必需的,但提供稍好的性能,因为匹配固定字符串比匹配正则表达式更快。

如果要删除所有类型的空格,请使用:

gsub("[[:space:]]", "", x) # note the double square brackets

## [1] "xy" "←→" "xy" NA

gsub("\\s", "", x)         # same; note the double backslash

library(regex)

gsub(space(), "", x)       # same

"[:space:]"是一个匹配所有空格字符的特定于R的正则表达式组。  \s是一个独立于语言的正则表达式,它做同样的事情。

该stringr方法:str_replace_all和str_trim

stringr在基本R函数周围提供了更多人类可读的包装器(尽管截至2014年12月,开发版本具有构建在其上的分支stringi,如下所述)。上述命令的等价物,使用[ str_replace_all][3],是:

library(stringr)

str_replace_all(x, fixed(" "), "")

str_replace_all(x, space(), "")

stringr还有一个str_trim只删除前导和尾随空格的函数。

str_trim(x)

## [1] "x y"          "← →"          "x \t\n\r\v\fy" NA

str_trim(x, "left")

## [1] "x y "                   "← → "

## [3] "x \t\n\r\v\fy \t\n\r\v\f" NA

str_trim(x, "right")

## [1] " x y"                   " ← →"

## [3] " \t\n\r\v\fx \t\n\r\v\fy" NA

该stringi方法:stri_replace_all_charclass和stri_trim

stringi基于独立于平台的ICU库构建,并具有广泛的字符串操作功能。以上的等价物是:

library(stringi)

stri_replace_all_fixed(x, " ", "")

stri_replace_all_charclass(x, "\\p{WHITE_SPACE}", "")

这里"\\p{WHITE_SPACE}"是对于该组被认为是空白,相当于Unicode码位的替换的语法"[[:space:]]","\\s"和space()。对于更复杂的正则表达式替换,也有stri_replace_all_regex。

stringi还有修剪功能。

stri_trim(x)

stri_trim_both(x)    # same

stri_trim(x, "left")

stri_trim_left(x)    # same

stri_trim(x, "right")

stri_trim_right(x)   # same


http://www.ppmy.cn/news/583801.html

相关文章

删除空格

; ; ;删除空格:代码1 ; author: wangguolaing ; date: revised 4/14.386 .MODEL FLATINCLUDE io.h includelib Kernel32.lib ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORDcr EQU 0dh Lf EQU 0ah .STACK 4096.DATA Array DWO…

消除多余的空格

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

C语言中删除字符所有空格

1.代码 #include <stdio.h>//求字符串长度 int Strlen(const char *str) {int length 0;while(\0 ! str[length]) {length ;}return length; }//删除字符串所有空格 void DelSpaceFromString(char *str) {int i 0;while(\0 ! str[i]) {if( str[i]) {for(int j i ; …

删除字符串中的空格(空字符)

C中的字符串过滤空格(空字符)&#xff0c;可以使用string自带的方法实现。 代码&#xff1a; #include<iostream> #include<string> using namespace std;/********************************************************** * *功能&#xff1a;去除字符串中的空字符 *…

删除 空格

function trim(str){ //删除左右两端的空格  return str.replace(/(^/s*)|(/s*$)/g, "");} function lTrim(){return this.replace(/(^/s*)/g, "");}function rTrim(){return this.replace(/(/s*$)/g, "");}

vim中怎么删除空格和回车

// 命令行中输入正则表达式 删除15~28行中空格和回车 :15,28s/\n\|\s//g 删除所有行中的空格和回车 :s/\n\|\s//g

删除输入的字符串中的所有空格

#include<stdio.h> int main(){int i0,j0,k;char str[30];scanf("%[^\n]",str); for(k0;k<29;k)//循环最大空格数 {j0; for(i0;i<30;i)// 最大单词数 {if((str[i]32&&str[i1]!32)||(str[i]32&&str[i1]32))//判断空格{ j1;}if(j1)//将后…

删除字符串中的空格

删除全部空格 char *trim_all(char *s){ char *ps, *sas; while (*p) { if(*p! ) *s *p; p; } *s0; return sa;} 删除前面和后面的空格 char *strtrim(char *s){ char *p s, *q s, *o s; while(*s ) s; while(*s){…