java字符串定位
❶ 在java中求一个字符串在另一个字符串中多次出现的位置。用indexOf方法怎么做
publicclassPractice
{
privatestaticvoidreadWord(Stringinput,Stringword,intoffset,intcount)
{
offset=input.indexOf(word,offset);
if(offset!=-1)
{
System.out.println(word+"在第"+offset+"个位置出现过.");
readWord(input,word,++offset,++count);
}
else
{
System.out.println(word+"总共出现了:"+count+"次.");
}
}
publicstaticvoidmain(String[]args)
{
Stringinput="Lookbuddy,,onceUlearnedtheheartofjava,IcanguaranteethatUwin.";
Stringword="java";
readWord(input,word,0,0);
}
}
❷ JAVA字符串中取特定字符的位置
String,一但声明了就不能变了!而StringBuffer是可变的,String声明的空间是个池里,而StringBuffer只能在堆里声明。
int indexOf(int ch)
返回指定字符在此字符串中第一次出现处的索引。
int indexOf(int ch, int fromIndex)
返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
int indexOf(String str)
返回指定子字符串在此字符串中第一次出现处的索引。
int indexOf(String str, int fromIndex)
返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
❸ java获取字符位置
给你三个方法。都能找出其位置并打印出结果
// 1.使用正则表达式方法
Pattern p = Pattern.compile(",");
String s1 = "abc,,de,f,g,hi,jkl";
Matcher m = p.matcher(s1);
// 将所有匹配的","的位置都打印出来,并统计次数
int cnt1 = 0;
while (m.find()) {
cnt1++;
System.out.println(m.start());
}
System.out.println("使用第1次方法检测出的,出现次数: " + cnt1);
// 2.使用String自带的indexOf方法
String s2 = s1;
int pos = 0;
int cnt2 = 0;
while (pos < s2.length()) {
pos = s2.indexOf(',', pos);
if (pos == -1) {
break;
} else {
cnt2++;
System.out.println(pos);
pos++;
}
}
System.out.println("使用第2次方法检测出的,出现次数: " + cnt2);
// 3.取出字符串String的每个字符逐一比较
String s3 = s1;
int cnt3 = 0;
for (int i = 0; i < s3.length(); i++) {
if (s3.charAt(i) == ',') {
cnt3++;
System.out.println(i);
}
}
System.out.println("使用第3次方法检测出的,出现次数: " + cnt3);
❹ java字符串位置
提供一下思路,indexof()取得第一个后数值后a,用substring把字符串拆开,要后半部分,继续indexof()取得数值b,位置就是a+b。以此类推递归下就可以!
❺ java字符串查找某个字符后面出现位置的方法!
一楼的说得好像不太对,如果在字符串中出现两个相同的字符呢,我却要查找后面那个,所以你这种方法永远只能找到第一个
❻ java字符串位置定位并调换位置的问题
可能通用的描述一下你的要求吗?
从例1看的话,是
Relation'(谓词,'Relation'()) 这样变成 Relation谓词Relation.... 去掉了()和单引号‘
例2
'(grandparent(X,Y),','(parent(X,Z),'
变成
grandparent(X,Y),(parent(X,Z)
好象是是去掉了单引号。
两个例子中没有找出共通点。所以不知道你要做什么。
❼ java 怎样转换字符串中字符位置
“字符串数组” 转 “字符串”,通过循环,没有其它方法
String[] str = {"abc", "bcd", "def"};
StringBuffer sb = new StringBuffer();
for(int i = 0; i < str.length; i++){
sb. append(str[i]);
}
String s = sb.toString();
“字符数组” 转 “字符串” 可以通过下边的方法
char[] data={'a','b','c'};
String s=new String(data);
❽ java中string怎么获取指定位置的字符
java中string获取指定位置的字符具体如下:
//截取#之前的字符串String str = "sdfs#d";str.substring(0, str.indexOf("#"));//
输出的结果为:sdfs//indexOf返回的索引也是从0开始的,所以indexOf("#") = 4。
//java中的substring的第一个参数的索引是从0开始,而第二个参数是从1开始。
如何将一个String类型的变量获取指定位置的值;这里说的是在没有split的情况下,如:String str = "CDZ";如何获取分开的字符;将str转换成StringBuffer进行处理:
publicclassTest{
publicstaticvoidmain(String[]args){
StringprocessNode="DZ";
StringBuffersb=newStringBuffer(processNode);
for(inti=0;i<sb.length();i++){
System.out.println(sb.charAt(i));
}
}
}
❾ java中怎么输出字符所在位置
java中输出字符所在位置可以使用indexOf()函数
例子:
System.out.println("abcd".indexOf("b"));
结果输出1
返回b字符在字符串abcd中第一次出现的位置