去除 字符串中空格/回车
去除 字符串中空格/回车
1),java去除字符串中的空格、回车、换行 符、制表符
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ReString(){
public static String replaceBlank(String str) {
String dest = "";
if (str!=null) {
Pattern p = Pattern.compile(\\s*|\t|\r|\n);
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}
public static void main(String[] args) {
System.out.println(StringUtils.replaceBlank("just do it!"));
}
25 |
||
26 |
笨方法:String s = "你要去除的字符串"; |
27 |
||
28 |
1. 去除空格:s = s.replace('\\s',''); |
29 |
||
30 |
2. 去除回车:s = s.replace('\n',''); |
31 |
||
32 |
这样也可以把空格和回车去掉,其他也可以照这样做。 |
33 |
||
34 |
注:\n 回车(\u000a) |
35 |
\t 水平制表符(\u0009) |
|
36 |
\s 空格(\u0008) |
37 |
\r 换行(\u000d)*/ |
|
38 |
} |
}
转自:http://www.oschina.net/code/snippet_107039_6026
2),利用Java正则表达式去掉SQL代码中回车换行和多余空格
利用Java正则表达式去掉SQL代码中回车换行和多余空格
刚才在写一个代码工具,遇到SQL换行和多余空格的问题,导致处理很困难,于是写了一个正则式,搞定了:
public static void main(String[] args) {
String sql = "SELECT * FROM \n" +
" `testdb`.`foo` LIMIT 0, 100";
String s = "SELECT * FROM `testdb`.`foo` LIMIT 0, 100";
String sql2 = Pattern.compile(" {2,}").matcher(s).replaceAll(" ");
String sql3 = s.replaceAll(" {2,}"," ");
String sql4 = sql.replace('\r', ' ').replace('\n', ' ').replaceAll(" {2,}"," ");;
String sql5 = sql.replace('\r', ' ').replace('\n', ' ').replaceAll(" {2,}?"," ");;
String sql6 = sql.replace('\r', ' ').replace('\n', ' ').replaceAll(" {2,}+"," ");;
System.out.println(sql2);
System.out.println(sql3);
System.out.println(sql4);
System.out.println(sql5);
System.out.println(sql6);
}
输出结果:
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
Process finished with exit code 0
结果可以看出,有一个是没有去掉多余空格的。
可见java中的正则式,同样含义的还有多重写法,呵呵!其实主要是不同数量词匹配模式在作怪:
原版API文档中写道:
Greedy 数量词 |
|
X? |
X,一次或一次也没有 |
X* |
X,零次或多次 |
X+ |
X,一次或多次 |
X{n} |
X,恰好 n 次 |
X{n,} |
X,至少 n 次 |
X{n,m} |
X,至少 n 次,但是不超过 m 次 |
|
|
Reluctant 数量词 |
|
X?? |
X,一次或一次也没有 |
X*? |
X,零次或多次 |
X+? |
X,一次或多次 |
X{n}? |
X,恰好 n 次 |
X{n,}? |
X,至少 n 次 |
X{n,m}? |
X,至少 n 次,但是不超过 m 次 |
|
|
Possessive 数量词 |
|
X?+ |
X,一次或一次也没有 |
X*+ |
X,零次或多次 |
X++ |
X,一次或多次 |
X{n}+ |
X,恰好 n 次 |
X{n,}+ |
X,至少 n 次 |
X{n,m}+ |
X,至少 n 次,但是不超过 m 次 |
但是,没有对三种方式进行更详细的说明,其实三种模式的区别如下:
Greedy :尝试找到最长的匹配。
Reluctant :尝试找到最短的匹配。
Possessive :也尝试找到最长的匹配。
尽管greedy和possessive迫使一个matcher在进行第一次匹配之前读取整个的text,greedy常常导致为了找到一个 match进行多次尝试,然而possessive让一个matcher仅尝试一个match一次。
下面是一个我工具中的方法:
/**
* 判断一条SQL语句是否已经是分页的SQL
*
* @param sql 源SQL
* @return 是已经分页的SQL时返回ture,否则返回False;
*/
public boolean isAlreadySegmentSQL(String sql) {
return sql.replace('\r', ' ').replace('\n', ' ').replaceAll(" {2,}", " ").matches("(?i).+LIMIT [\\d+ *|\\d *, *\\d+].+");
}
本文出自 “熔 岩” 博客, http://lavasoft.blog.51cto.com/62575/742164
3),sqlserver 数据库 去除字段中空格,换行符,回车符(使用replace语句)
SQL中可以使 用Replace函数来对某个字段里的某些字符进行替换操作,语法如下:
语法
REPLACE ( original-string, search-string, replace-string )
参数
如果有某个参数为 NULL,此函数返回 NULL。
original-string 被搜索的字符串。可为任意长度。
search-string 要搜索并被 replace-string 替换的字符串。该字符串的长度不应超过 255 个字节。如果 search-string 是空字符串,则按原样返回原始字符串。
replace-string 该字符串用于替换 search-string。可为任意长度。如果 replacement-string 是空字符串,则删除出现的所有search-string。
例子:
UPDATE tableName SET recordName=REPLACE(recordName,'abc','ddd')
将表tableName中的recordName字段 中的 abc 替换为 ddd
这个函数有一点不足是不支持 text,ntext类型字段的替换,可以通过下面的语句来实现:
update tableName set recordName=replace(cast(recordName as varchar(8000)) ,'abc','ddd')
4), 使用SQL语句去除、删除数据库中的空格、 回车字符的方法
日常在处理数据数据的时候,经常都有用户在操作一些系统时,把数据直接从Excel复制到系统,然后数据保存在数据库里边去了,但是正是这样的复制动作, 把Excel的单元格的空格或者跳行(回车)的格式都保存在了数据库里边,使得查看数据或者数据在被使用的时候出现了问题,那么如何通过SQL语句可以把 空格或者回车等的格式字符去掉呢?有如下的办法
1.去掉回车的字符格式:
REPLACE(filed_name,CHAR(13)+CHAR(10),SPACE(0))
其中的filed_name代表 数据库的字段名,使用时候替换即可,使用范例如下
update ieel00h set el_name1= REPLACE(el_name1,CHAR(13)+CHAR(10),SPACE(0)) where el_no like 'L%'
2.去空格
可以通过 rtrim 去除右边空格, ltrim去除左边空格 。使用范例如下:
update ieel00h set el_name1=rtrim(el_name1) where el_no like 'L%'
update ieel00h set el_name1=Ltrim(el_name1) where el_no like 'L%'
但是,当存放的数据字符串中间有太多的空格(甚至具体多少空格,是全角的还是半角输入法下的空格也不清楚),又应该如何处理呢?
一个比较保守的方法,一定凑效:
先通过SQL查询这个字段出来,
然后直接复制这个字段其中的内容,贴到空白处,
再选择其中的空格内容进行复制,
再使用 replace 函數處理,如下:
update ieel00h set el_name1=REPLACE(el_name1,' ',' ') where el_no like 'A0271001%'
再査,已經只有一個空格了。
5), sql中去掉换行符和回车符
6), SQL删除记录空格几种方法详解
7), 数据库 SQL 语句 去除字段中空格,换行符,回车符(应用replace语句)
SELECT *, REPLACE(detail, CHAR(13) , ""<br>"") AS 显示调换后的内容 FROM loginfo
SELECT *, REPLACE(detail, CHAR(10), ""<br>"") AS 显示调换后的内容 FROM loginfo
SELECT *, REPLACE(detail, CHAR(13) + CHAR(10), ""<br>"") AS 显示调换后的内容FROM loginfo
UPDATE loginfo
SET detail = REPLACE(detail, CHAR(13) + CHAR(10), ""<br><br>"")
注 在 dos win 系列会呈现 回车+换行符 CHAR(13)+CHAR(10)
UPDATE loginfo SET detail = REPLACE(detail, CHAR(13) , """")
8) ,在SQL数据库中删除字段中包含的空格、换行符、回车符
删除字段中空格:update 表名 set 字段=replace(字段,' ','') where 字段 like ('%'+' '+'%')
删除字段中换行符:update 表名 set 字段=replace(字段,char(10),'') where 字段 like ('%'+char(10),+'%')
删除字段中回车符:update 表名 set 字段=replace(字段,char(13),'') where 字段 like ('%'+char(13),+'%')
9), SQL Update 语句删除空格
利用SQL Update 语句删除空格
Update Table Set Colname=Replace(Colname," ","")
利用SQL Update 语句删除回车
Update Table Set Colname=Replace(Colname,char(13),"")
利用SQL Update 语句删除硬回车
Update Font Set DemoUrl=Replace(DemoUrl,'','')
10), 数据库 SQL 语句 去除字段中空格,换行符,回车符(使用replace函数)
11), oracle中去掉文本中的换行符、回车符、制表符小结
一、特殊符号ascii定义
制表符 chr(9)
换行符 chr(10)
回车符 chr(13)
SQL> select vb,vc,replace(vc,chr(10),'') as TT, translate(vc,chr(10),',') from test_1;
3 C C C
1 D D D
5 A A A
5 A A A
0 A A A
0 A A A
3 C C C
1 D D D
5 A A A
5 A A A
0 A A A
0 A A A
三、对于字符大对象的符号处理
对于clob字段中的符号处理,先to_char然后一样的处理
SQL> select to_char(vcl),replace(to_char(vcl),chr(10),'[]') from test_1;
A a ZERO SPACE
---------- ---------- ---------- ----------
65 97 48 32
SQL> select ascii('赵') zhao,length('赵') leng from dual;
ZHAO LENG
---------- ----------
54740 1
CHR(<I>[NCHAR])
给出整数,返回对应字符。如:
SQL> select chr(54740) zhao,chr(65) chr65 from dual;
CONCAT(<c1>,<c2>)
SQL> select concat('010-','8801 8159')||'转23' 赵元杰电话 from dual;
SQL> select initcap('simth') upp from dual;
SQL> SELECT INSTR ('Oracle Training', 'ra', 1, 2) "Instring" FROM DUAL;
INSTRB(<c1>,<c2>[,<I>[,<j>] ] )
NAME LENGTH(NAME) ADDR LENGTH(ADDR) SAL LENGTH(TO_CHAR(SAL))
------ ------------ ---------------- ------------ ---------- ----------------
SQL> select name,lengthb(name),length(name) from nchar_tst;
NAME LENGTHB(NAME) LENGTH(NAME)
------ ------------- ------------
LOWER ( <c> )
返回字符串并将所有字符变为小写。
SQL> select lower('AaBbCcDd') AaBbCcDd from dual;
UPPER( <c>)
与 LOWER 相反,将给出字符串变为大写。如:
SQL> select upper('AaBbCcDd') AaBbCcDd from dual;
Left TRIM (左截断)删去左边出现的任何set 字符。
Right TRIM (右截断)删去右边出现的任何set 字符。
SELECT RTRIM (‘Mother Theresa, The’, ‘The’) “Example of Right
SUBSTR Substr(string,start[,Count])
IBM 数据库
--------------------
IBM Informix 中国公司
返回一个与给定的字符串读音相同的字符串(不管拼写是否一样)。
REPLACE (‘string’ [,’string_in’,’string_out’])
TRIM ( [<leading>] <trailing> FROM <trim_char> )
RIM可以使你对给定的字符串进行裁剪(前面,后面或前后)。
SELECT TRIM (0 FROM 0009872348900) "TRIM Example" FROM DUAL;
--------------------------------
expr: 代表一串字符,from 与 to 是从左到右一一对应的关系,如果不能对应,则视为空值。
select translate('abcbbaadef','ba','#@') from dual (b将被#替代,a将被@替代)
select translate('abcbbaadef','bad','#@') from dual (b将被#替代,a将被@替代,d对应的值是空值,将被移走)
因此:结果依次为:@#c##@@def 和@#c##@@ef
去除 字符串中空格/回车相关推荐
- Python 去除字符串中空格(删除指定字符)的3种方法
文章目录 Python 去除字符串中空格 Python strip()方法 Python lstrip()方法 Python rstrip()方法 Python 去除字符串中空格 用户输入数据时,很有 ...
- java:去除字符串中空格 、 oracle (+) 、 mysql中数值运算符和函数
java:去除字符串中空格 http://www.cnblogs.com/LiuChunfu/p/5661810.html oracle:oracle (+) https://zhidao.baidu ...
- Java详解去除字符串中空格的方法
Java去除字符串中空格的方法详解 代码中字符串使用了replaceAll()方法,去除了所有空格(其中包括:首尾空格.中间空格) 遂整理下java关于字符串去除空格的方法. 1.方法分类 str.t ...
- Python去除字符串中空格(删除指定字符)的3种方法
用户输入数据时,很有可能会无意中输入多余的空格,或者在一些场景中,字符串前后不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符. 这里的特殊字符,指的是制表符(\t).回车符(\r).换 ...
- Java去除字符串中空格的方法详解
昨天写了一个关于Excel文件处理的脚本,在字符串匹配功能上总是出现多余不正确的匹配,debug调试之后,发现一个坑. 代码中字符串使用了replaceAll()方法,去除了所有空格(其中包括:首尾空 ...
- c语言去除字符串的空格,C语言实现去除字符串中空格
去除字符串中所有空格 voidVS_StrTrim(char*pStr) { char *pTmp = pStr; while (*pStr != '/0') { if (*pStr != ' ') ...
- Python中去除字符串中空格的四种方法
一.需求说明 业务需要对Pyhon中的一些字符串内容去除空格,方便后续处理. 二.思路分析 去除空格内容,可以使用去除字符串空格的函数或者直接使用替换函数即可. 三.实现方法 3.1.去除字符串头尾的 ...
- Java去除字符串中空格、制表符、回车换行的方法
\t 是制表符 \r\n 回车换行 注意:\r,\n的顺序是不能够对换的,否则不能实现换行的效果. 操作系统的不同,换行符操也不同: \r: return 到当前行的最左边. \n: newline ...
- Java 中去除字符串中空格的方法
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1.方法分类 str.trim(); //去掉首尾空格 str.replace(" &qu ...
最新文章
- php 线程锁,如何使用python线程锁(实例解析)
- LeetCode_104.二叉树的最大深度
- Python Django 一对多正向查询示例
- ftp服务器文件查找功能,ftp服务器端查找功能
- 外设驱动库开发笔记4:AD9833函数发生器驱动
- tomcat内存溢出
- 前端学习笔记之 JavaScript WebAPIs(整理)
- code craft_Craft.io调度中使用的重要术语
- java按钮触发另一个页面_前端跨页面通信,你知道哪些方法?
- 龙卷风路径_龙卷风突袭洛阳镇天井村 50多亩桃园遭了殃
- C语言宏的特殊用法和几个坑
- Redis客户端Redisson+SpringBoot实现的分布式锁案例
- 图像处理 灰度世界算法
- 6、numpy之文件保存与加载
- excel小技巧之--自定义序列
- SQL 2008R2 误删除数据恢复方法(一)
- 概率论与数理统计学习笔记(3)——Pearson相关系数与Spearman相关系数
- linux 桌面美化指南,Linux_9方面立体式地美化Ubuntu桌面,总结了一下桌面美化的设置。 - phpStudy...
- 前端技术栈:后台管理端UI框架
- P1217 回文质数