- 浏览: 4754657 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
bzhao:
你也应该可以这样:(not tested)./rbtunnel ...
在Bash脚本中怎么关闭文件描述符? -
bzhao:
如果有A进程原代码情况下,通过如下调用,把他的子进程继承关闭则 ...
在Bash脚本中怎么关闭文件描述符? -
Master-Gao:
楼主咋没分析下源码呢?
我使用过的Linux命令之dirname - 截取给定路径的目录部分 -
jiedushi:
tail -F 就可以吧
Linux下实时跟踪log4j日志文件的bash脚本 - 增强了tail -f的功能 -
java_is_new:
新手学习了,就是不明白为一个网卡配多个ip有什么用
我使用过的Linux命令之ifconfig - 网络配置命令
Java程序员的Bash实用指南系列之字符串处理(目录)
在一般的计算机编程语言中,字符串处理是很重要的一块,Bash也是如此,如果掌握了字符串的处理,基本上就能够应付大部分的编程工作了。在Unix/Linux操作系统中,很多时候需要使用多个命令一起配合才能完成一个较复杂的任务,Shell提供了管道线、重定向、结构化编程等方式,把这些命令粘合在一起。因此,命令之间的接口数据的处理也就非常重要了,而这大部分都涉及到字符串处理。
在这个系列中,我决定从一个Java程序员的角度来将Bash字符串处理的各个方面做个整理和总结,本系列资料的来源于互联网和个人实践,如有不妥之处,欢迎大家指出来。
序号 | 标题 | Java参考 |
1 | (字符串)变量声明 | String s; String s2 = "hello"; |
2 | 字符串的表示方式(字符串常量) | 'c', "string\r\n" |
3 | 给(字符串)变量赋值 | s2 = s1; s3 = "another"; |
4 | 字符串输出 | System.out.println(s); |
5 | 字符串输入(读取字符串) | Console.readLine; Scanner.nextLine |
6 | 判断字符串是否为空(不为空) | if (s.isEmpty()); if (!s.isEmpty()); StringUtils.isEmpty |
7 | 字符串与默认值 | if (s == null) s = "default"; StringUtils.defaultString |
8 | 计算字符串长度 | s.length() |
9 | 获取字符串指定位置的字符、遍历字符串中的字符 | s.charAt(i) |
10 | 判断两个字符串是否相等(不等) | if (s1.equals(s2)) |
11 | 比较两个字符串大小(字典顺序、数值比较) | s1.compareTo(s2) |
12 | 字符串连接 | String s = s1.concat(s2); |
13 | 字符串数组连接(以指定分隔符合并) | String join(String[] a, String sep); StringUtils.join |
14 | 判断是否包含另外的字符串(多达6种方法) | if (s.contains(s2)) |
15 | 计算子串出现的次数 | StringUtils.countMatches |
16 | 判断是否以另外的字符串开头 | if (s.startsWith(s2)) |
17 | 判断是否以另外的字符串结尾 | if (s.endsWith(s2)) |
18 | 格式化字符串 | String.format(format, arg...) |
19 | 查找字符的位置 | int pos = s.indexOf(c); |
20 | 查找子串的位置 | int pos = s.indexOf(s2); |
21 | 字符串(正则)匹配 | if (s.matches(regex)) |
22 | 判断字符串是否数字串 | if (s.matches("\\d+")) |
23 | 字符串替换、子串删除、子串截取 | s.replace(s1, s2); s.replaceAll(s1, s2) |
24 | 文件路径字符串的处理 | |
25 | 字符串分隔(成数组) | String[] a = s.split(regex); |
26 | 根据位置和长度截取子串 | String s2 = s.substring(pos, len); |
27 | 转换大小写 | String s1 = s.toLowerCase(), s2 = s.toUpperCase(); |
28 | 去除前后空白 | String s2 = s.trim(); |
29 | 字符串翻转 | |
30 | 综合实例:自动生成版本号源文件 |
本文链接:http://codingstandards.iteye.com/blog/1162455 (转载请注明出处)
参考资料:
【1】JavaDoc java.lang.String
【2】Apache Commons-Lang Class StringUtils
【3】ABS Advanced Bash-Scripting Guide http://tldp.org/LDP/abs/html/
【4】51CTO 1.2 UNIX系统的主要特性 http://book.51cto.com/art/201001/179368.htm
【5】The Java Tutorials http://download.oracle.com/javase/tutorial
【6】Unix Shell Programming http://www.tutorialspoint.com/unix/unix-shell.htm
【7】http://tldp.org/LDP/Bash-Beginners-Guide/html/Bash-Beginners-Guide.html
修订历史:
2011-08-26 规划、整理资料
2011-08-31 编写目录并发布
2011-09-03 编写30节的草稿,调整了第1节和第2节的顺序
2011-09-05 发布第1节 (字符串)变量声明
2011-09-06 发布第2节 字符串的表示方式(字符串常量)
2011-09-07 发布第3节 给(字符串)变量赋值
2011-09-08 发布第4节 字符串输出
2011-09-13 发布第5节 字符串输入(读取字符串)
2011-09-14 发布第6节 判断字符串是否为空(不为空)
2011-09-15 发布第7节 字符串与默认值
2011-09-16 发布第8节 计算字符串长度
2011-09-19 发布第9节 获取字符串指定位置的字符、遍历字符串中的字符
2011-09-20 发布第10节 判断两个字符串是否相等(不等)
2011-09-21 发布第11节 比较两个字符串大小(字典顺序、数值比较)
2011-09-23 发布第12节 字符串连接
2011-09-26 发布第13节 字符串数组连接(以指定分隔符合并)
2011-09-27 发布第14节 判断是否包含另外的字符串(多达6种方法)
2011-09-28 发布第15节 计算子串出现的次数
2011-10-08 发布第16节 判断是否以另外的字符串开头
2011-10-09 发布第17节 判断是否以另外的字符串结尾
2011-10-17 发布第18节 格式化字符串
2011-10-18 发布第19节 查找字符的位置
2011-10-19 发布第20节 查找子串的位置
2011-10-24 发布第21节 字符串(正则)匹配
2011-10-25 发布第22节 判断字符串是否数字串
2011-10-26 发布第23节 字符串替换、子串删除、子串截取
2011-10-30 发布第24节 文件路径字符串的处理
2011-11-03 发布第25节 字符串分隔(成数组)
2011-11-04 发布第26节 根据位置和长度截取子串
2011-11-07 发布第27节 转换大小写
2011-11-08 发布第28节 去除前后空白
2011-11-09 发布第29节 字符串翻转
评论
发表评论
-
Bash字符串处理(与Java对照) - 22.判断字符串是否数字串
2011-10-25 09:25 5502Bash字符串处理(与Java对照) - 22.判断字符串是否 ... -
Bash字符串处理(与Java对照) - 21.字符串正则匹配
2011-10-24 09:07 11077Bash字符串处理(与Java对照) - 21.字符串正则匹配 ... -
Bash字符串处理(与Java对照) - 20.查找子串的位置
2011-10-19 09:14 6846Bash字符串处理(与Java对照) - 20.查找子串的位置 ... -
Bash字符串处理(与Java对照) - 19.查找字符的位置
2011-10-18 09:06 5956Bash字符串处理(与Java对照) - 19.查找字符的位置 ... -
Bash字符串处理(与Java对照) - 18.格式化字符串
2011-10-17 09:18 5020Bash字符串处理(与Java对照) - 18.格式化字符串 ... -
Bash字符串处理(与Java对照) - 17.判断是否以另外的字符串结尾
2011-10-09 08:58 6999Bash字符串处理(与Java对照) - 17.判断是否以另外 ... -
Bash字符串处理(与Java对照) - 16.判断是否以另外的字符串开头
2011-10-08 09:17 8423Bash字符串处理(与Java对照) - 16.判断是否以另外 ... -
Bash字符串处理(与Java对照) - 15.计算子串出现的次数
2011-09-28 09:37 3434Bash字符串处理(与Java对照) - 15.计算子串出现的 ... -
Bash字符串处理(与Java对照) - 14.判断是否包含另外的字符串(多达6种方法)
2011-09-27 13:22 8362Bash字符串处理(与Java对照) - 14.判断是否包含另 ... -
Bash字符串处理(与Java对照) - 13.字符串数组连接(以指定分隔符合并)
2011-09-26 09:19 5216Bash字符串处理(与Java对照) - 13.字符串数组连接 ... -
Bash字符串处理(与Java对照) - 12.字符串连接
2011-09-23 09:08 6374Bash字符串处理(与Java对照) - 12.字符串连接 ... -
Bash字符串处理(与Java对照) - 11.比较两个字符串大小(字典顺序、数值比较)
2011-09-21 09:31 5733Bash字符串处理(与Java对照) - 11.比较两个字符串 ... -
Bash字符串处理(与Java对照) - 10.判断两个字符串是否相等(不等)
2011-09-20 09:16 6940Bash字符串处理(与Java对照) - 10.判断两个字符串 ... -
Bash字符串处理(与Java对照) - 9.获取字符串指定位置的字符、遍历字符串中的字符
2011-09-19 09:13 3756Bash字符串处理(与Java对照) - 9.获取字符串指定位 ... -
Bash字符串处理(与Java对照) - 8.计算字符串长度
2011-09-16 09:20 5689Bash字符串处理(与Java对照) - 8.计算字符串长度 ... -
Bash字符串处理(与Java对照) - 7.字符串与默认值
2011-09-15 09:20 3971Bash字符串处理(与Java对照) - 7.字符串与默认值 ... -
Bash字符串处理(与Java对照) - 6.判断字符串是否为空(不为空)
2011-09-14 09:20 7239Bash字符串处理(与Java对照) - 6.判断字符串是否为 ... -
Bash字符串处理(与Java对照) - 5.字符串输入(读取字符串)
2011-09-13 09:28 3961Bash字符串处理(与Java对照) - 5.字符串输入(读取 ... -
Bash字符串处理(与Java对照) - 4.字符串输出
2011-09-08 09:30 3773Bash字符串处理(与Java对照) - 4.字符串输出 I ... -
Bash字符串处理(与Java对照) - 3.给(字符串)变量赋值
2011-09-07 09:29 6909Bash字符串处理(与Java ...
相关推荐
字符串处理是BASH编程中的重要组成部分,它允许用户对文本数据进行操作,包括截取、替换、比较等。这篇博文将深入探讨BASH中的字符串处理技巧。 一、字符串定义与赋值 在BASH中,字符串可以被赋值给变量,常见的...
在Linux系统中,Bash shell提供了一系列强大的命令来处理字符串,这些命令包括grep、sed、cut等。本文将详细介绍这些命令的功能、参数及其使用方法。 首先,让我们来看看grep命令。grep全称为Global Regular ...
在Java编程语言中,文本字符串替换是一个常见的任务,特别是在处理大量文本数据时。这个"java 文本字符串替换工具"很可能是为了帮助开发者高效地搜索和替换文件中的特定文本内容。让我们详细了解一下如何在Java中...
本文档是一份非常详细和实用的 Linux 和 Java 相关的知识库,对于 Java 程序员来说,学习和掌握这些知识和技术将非常有益。 知识点: 1. Linux 操作系统的基础知识和实践经验 2. Linux 的安装和设置 3. Bash 命令...
bash写的字符串常用函数,这个可以看看。资源分就免了
这篇博客“shell批量处理字符串指令行”可能探讨了如何利用shell的特性来处理字符串,包括查找、替换、截取等操作。 首先,让我们了解一些基本的shell字符串处理命令: 1. **变量赋值**:在shell中,我们可以通过`...
### Shell中的字符串处理方法 #### 引言 在Shell编程中,字符串处理是一项重要的技能,尤其是在Linux环境下。本文将深入探讨几种高效的字符串处理技术,并通过实际示例展示这些技巧的应用场景。 #### 字符串截断 ...
ES6引入了许多新的语法特性,使得处理字符串变得更加方便。"deline"是一个专为处理多行字符串设计的库,它专注于删除多余的换行符,从而帮助开发者保持代码整洁和规范。本文将深入探讨deline的工作原理、使用方法...
Bash支持算术运算符和字符串操作,例如`$((表达式))`用于算术运算,`${变量名#模式}`用于模式匹配和替换。 条件语句(if-then-else)和循环结构(for、while、until)是控制脚本流程的重要组成部分。例如,`if [ $...
在Java程序员的眼中,Linux操作系统扮演着至关重要的角色。它是一个免费、开源的类Unix系统,为开发和运行Java应用程序提供了稳定、安全且高效的平台。Linux不仅被广泛应用于服务器领域,也是许多分布式系统和云计算...
很不错的bash入门资料,浅显易懂,shell编程的知识点都有介绍
Shell还提供了一系列内置的操作来处理字符串,如截取、替换等。 **1. 字符串长度** - **${#string}**: 返回字符串的长度。 - 示例: ```bash str="Hello World" echo "${#str}" # 输出: 11 ``` **2. 子字符...
Bash 支持简单的数组操作,这对于处理字符串非常有用。 1. **创建和访问数组:** ```bash $ var="getlengthofme" $ var_arr=($var) $ echo ${var_arr[0]} ${var_arr[1]} ${var_arr[2]} ${var_arr[3]} ${var_arr...
它通过定义字符的规则集合来匹配字符串,广泛应用于字符串搜索和替换、文本处理等领域。在Shell编程中,常见的正则表达式操作包括处理URL地址、匹配邮件地址、格式化文本等。 字符串操作的范例还包括对特定字符串...
在IT行业中,字符串处理是一项基础且重要的任务,尤其是在文本分析、自然语言处理和信息检索等领域。本主题聚焦于“检验字符串是否包含简体字”,这是一个常见的需求,特别是在处理中文文本时,尤其是当文本中可能...
**Bash新手指南** 在IT领域,Bash(Bourne-Again SHell)是Linux和Unix系统中最常用的命令行解释器,也是用户与操作系统交互的主要方式之一。本指南主要面向初学者,旨在帮助你快速掌握Bash Shell编程的基础知识。 ...
《高级Bash脚本编程指南》是一本专为深度学习Unix/Linux环境下的Bash脚本编程而设计的书籍。Bash,全称Bourne-Again Shell,是Unix和类Unix系统中最常用的shell之一,几乎在所有Linux发行版以及大部分的Unix变体中都...