java s.charat_Java中s.charAt(index)用于提取字符串s中的特定字符操作

charAt(int index)方法是一个能够用来检索特定索引下的字符的String实例的方法.

charAt()方法返回指定索引位置的char值。索引范围为0~length()-1.

如: str.charAt(0)检索str中的第一个字符,str.charAt(str.length()-1)检索最后一个字符.

警告:在字符串s中越界访问字符是一种常见的程序设计错误。为避免此类错误要确保使用的下标不会超过s.length()-1.

public class hash {

public static void main(String[] args) {

// TODO Auto-generated method stub

String str = "This is yiibai";

// prints character at 1st location

System.out.println(str.charAt(0));

// prints character at 5th location i.e white-space character

System.out.println(str.charAt(4));

// prints character at 18th location

System.out.println(str.charAt(6));

}

}

结果如下:

92f103951fff42a15ec15825ae46e7f8.png

补充知识:JAVA 提取字符串常用的两种方法(subString、正则表达式)

1.通过subString()方法来对字符串进行操作

subString()语法:

public String substring(int beginIndex)

public String substring(int beginIndex, int endIndex)

1、取得的字符串长度为:endIndex - beginIndex;

2、从beginIndex开始取,到endIndex结束,从0开始数,其中不包括endIndex位置的字符

示例:

String str1="abdc686512ffsc1267d";

String substr1=str1.substring(4);

//指定区间(不包括结束索引处)

String substr2=str1.substring(4, 10);

System.out.println("substr1="+substr1);

System.out.println("substr2="+substr2);

System.out.println("*****************************");

//结合使用indexOf()灵活截取示例

String str2="";

String cutstr=str2.substring(9, str2.indexOf("]]"));

System.out.println("cutstr="+cutstr);

结果:

substr1=686512ffsc1267d

substr2=686512

*****************************

cutstr=3-4级

2.使用正则表达式+Pattern()和Matcher()

Pattern 类:

pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。

Matcher 类:

Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。

完整示例

System.out.println("正则表达式:");

//正则表达式

String str2="";

String fengli="\\[CDATA\\[(.*?)\\]\\]>";//提取风级的正则表达式

Pattern pafengli=Pattern.compile(fengli);

Matcher matfengli = pafengli.matcher(str2);

if(matfengli.find())

{

cutstr = matfengli.group(1); //group为捕获组

System.out.println("cutstr="+cutstr);

}

else

System.out.println("没找到");

正则表达式:

cutstr=3-4级

注意: String fengli="\\[CDATA\\[(.*?)\\]\\]>";中的斜杠为转义标志

以上这篇Java中s.charAt(index)用于提取字符串s中的特定字符操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【转】.NET框架简介

.NET 框架是由微软开发的软件开发平台,其最主要的两个组成部分是公共语言运行时 (CLR) 和框架类库 (FCL),基础类库 (BCL)是框架类库的一个子集。 .NET 框架简介 下图展示了 .NET 框架的主要结构。 其中,最下层的无疑就是操作系统了。 在 …

eclipse java maven_java – 非常轻量级的Eclipse-Maven集成 – 仅...

我找到了一个非常适合我所描述的需求/用例的解决方案:1.我在Eclipse项目根目录中创建了非常小的pom文件:4.0.0com.sobczyk.piotrmvn-eclipse-test1.0.0srcbinlog4jlog4j1.2.16这个.pom文件由三部分组成:>必需的Maven东西,即. modelVersion…

【转】Path.Combine (合并两个路径字符串)方法的一些使用细节

System.IO.Path.Combine 简单来说,就是合并两个路径字符串。 比如下面这个调用, Path.Combine(“C:\11”,“aa.txt”) 返回的字符串路径为: C:\11\aa.txt 这个方法的声明如下: public static string Combine ( string path1, st…

java 正则表达式 开头 结尾_Java-正则表达式匹配 #开头结尾

引包import java.util.regex.Matcher;import java.util.regex.Pattern;方法1:// 匹配 #开头结尾中,#以及中间得字符串 #xxx 替换为 "" #123 匹配#123String tableModle "#123#2#3#4";Pattern pPattern.compile("…

java比赛题目_【蓝桥杯2016第七届比赛题目】JAVA A组

1 煤球数目有一堆煤球,堆成三角棱锥形。具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球?请填表…

【转】C#技术漫谈之垃圾回收机制(GC)

摘要:今天我们漫谈C#中的垃圾回收机制,本文将从垃圾回收机制的原理讲起,希望对大家有所帮助。 GC的前世与今生 虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久。早在1958年,由鼎鼎大名的图林奖得主John…

【转】git hub 使用小结

【转自:https://blog.csdn.net/yj310873325/article/details/79255134】 1.创建账号: https://github.com/ 2.下载客户端:https://git-scm.com/download 这是命令行模式,用着比较舒服,不是github的客户端,一路默认安…

java 服务降级_微服务的降级学习

参考博客:https://blog.csdn.net/glory1234work2115/article/details/51626322https://blog.csdn.net/xiaofei0859/article/details/79180406什么是降级?1.开关先讲一下开关的由来,例如京东在6月18日做店庆促销活动,在交易下单环节…

【转】细说.NET 中的多线程 (一 概念)

为什么使用多线程 1.使用户界面能够及时响应用户的输入 当某个应用程序在进行大量运算时候,为了保证应用程序能够随时响应客户的输入,这个时候我们往往需要让大量运算和响应用户输入这两个行为在不同的线程中进行。 2.效率原因 应用程序经常需要等待一…

java内存加载dll_jacob调用dll控件,是否要执行内存释放,具体方法怎么写

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼程序用jacob调用dll控件,执行考勤的一些数据获取,可是当很多人同时操作时,会把tomcat关掉,然后产生一个错误文件,部分内容如下:## An unexpected error has been detected by HotSpot…

【转】细说.NET中的多线程 (二 线程池)

上一章我们了解到,由于线程的创建,销毁都是需要耗费大量资源和时间的,开发者应该非常节约的使用线程资源。最好的办法是使用线程池,线程池能够避免当前进程中大量的线程导致操作系统不停的进行线程切换,当线程数量到达…

java第二章_零基础学Java第二章

一、第一个代码案例1.1. HelloWorld案例1.1.1 代码执行流程我们写的代码都将以.java开头的文件保存,经过类编译器编译成.class的字节码文件,然后通过解释器翻译与机器交流1.1.1 代码执行流程1. 编写代码步骤首先定义一个类:public class 类名…

【转】细说.NET中的多线程 (三 使用Task)

上一节我们介绍了线程池相关的概念以及用法。我们可以发现ThreadPool. QueueUserWorkItem是一种起了线程之后就不管了的做法。但是实际应用过程,我们往往会有更多的需求,比如如何更简单的知道线程池里面的某些线程什么时候结束,线程结束后如何…

java volidate_volidate 学习

一:Volatile 变量具有synchronized的可见性,有序性 特性,但是不具备原子特性二:java memory model(jmm) java 内存模型形象理解见下图Java Memory Modela:java 线程读取共享内存变量流程:线程2 --> JMM …

【转】ABP源码分析一:整体项目结构及目录

ABP是一套非常优秀的web应用程序架构,适合用来搭建集中式架构的web应用程序。 整个Abp的Infrastructure是以Abp这个package为核心模块(core)15个模块(module).其中13个依赖于Abp这个核心包。另外两个包(FluentMigration,Web.Resources)相对独…

JavaScript 中的短路求值(if语句简洁写法--逻辑运算符||和的高级用法)

在JavaScript中,Short-Circuit Evaluation(短路求值)是一种逻辑运算的行为,其中表达式的求值在达到不必要的部分时就提前终止(所以短路一词非常贴切)。这种行为可以通过逻辑运算符(例如&&am…

【转】ABP源码分析二:ABP中配置的注册和初始化

一般来说,ASP.NET Web应用程序的第一个执行的方法是Global.asax下定义的Start方法。执行这个方法前HttpApplication 实例必须存在,也就是说其构造函数必然已完成了执行。 ABP开始的地方就是HttpApplication的构造函数。 如下图一,Abp定义了一…

python文本进度条94页_Python学习笔记 | 实例4:文本进度条

本文为中国大学MOOC《Python语言程序设计》课程学习笔记,课程主讲:嵩天老师,练习平台:Python123,参考教材:《Python语言程序设计基础》文本进度条-简单的开始import timescale 10print("----执行开始…

【转】ABP源码分析三:ABP Module

Abp是基于模块化设计思想进行构建的。开发人员可以将自定义的功能以模块(module)的形式集成到ABP中。具体的功能都可以设计成一个单独的Module。Abp底层框架提供便捷的方法集成每个Module.下图是所有Abp自带的module.AbpModule是所有Module的基类&#x…

java weka 聚类_简单开源数据挖掘工具weka进行文本聚类

目前非代码的数据挖掘工具很多,但非开源,weka是一款开源软件。只要安装jdk环境就可使用(具体安装jdk可以百度)本文将论述如何不用代码,使用weka操作,通过与文档频数与单词权的特征选择方法进行文本聚类(数据为附件)第一步&#xf…