发布网友 发布时间:2022-04-21 08:58
共1个回答
热心网友 时间:2023-07-07 05:54
java 怎么撷取字串中的括号 可以通过java的”substring“方法截取出对应的字串,前提是知道开始和结束的字串的值:
String getSignInfo = reqResult.substring(reqResult.indexOf("(") + 1, reqResult.indexOf(")"));
解释:上述方法就是撷取reqResult字串的中开始”(“和结束”)“中间部分的内容,”1“就是”)“的长度,之后将获取的结果赋值给”getSignInfo进行输出即可“;
备注:以上方法通用于撷取字串,数字”6“和开始结束字串根据实际需要修改即可。
java怎么撷取字串
1、subString(int start);撷取从小标为start位置开始到结尾的字串
2、subString(int start,int end);撷取从小标为start位置开始到小标为end-1的字串
3、split(String s);将根据s匹配,将字串截成阵列;
比如String str = ”aa,b,vc,java“
str.split(",")得到的就是阵列{”aa“,”b“,”vc“,”java“}
java 撷取字串
楼主首先要明白一个本质的问题,只有变数才能够被赋值。方法的返回值是不能被赋值的。
还有一个问题需要解释一下,String a="abcabc",如果你是想就地把第1个a替换成b,那这是办不到的!
我们能办到的是,拷贝一个副本,在此副本上进行操作。我所说的副本可以是阵列,也可以是StringBuffer.
操作完后,再利用修改后的副本构造一个新的String物件,最后让a指向这个物件。
来解决你提的第一个问题吧,我觉得方案有很多。
用阵列:
char[] c=a.toCharArray();
c[0]='b';
a=new String(c);
用StringBuffer():
StringBuffer b = new StringBuffer( a );
b.setCharAt( 0 , 'b' );单引号
a=b.toString();
再回答第二问
Buffer是缓冲区的意思.缓冲区是用于储存临时资料的(还在被使用者所操作).
StringBuffer就是字串缓冲区.在缓冲区内可以进行各种写操作,如拼接字串,修改字串等.
public class Test {
public static void main(String[] args) {
String str = "C:\\\\Program%20Files\\\\Apache%20Sofare%20Foundation\\\\Tomcat%206.0\\\\webapps\\\\viptickets\\\\financial\\\\excel\\\\rsf_20110620133950.xls";
System.out.println(str.replaceAll("%20", " "));
}
}
---------------------------
C:\\Program Files\\Apache Sofare Foundation\\Tomcat 6.0\\webapps\\viptickets\\financial\\excel\\rsf_20110620133950.xls
/*
思路:
判断最后一个被撷取的位元组是不是负数。
如果是负数,继续往前判断,连续的负数的个数。
如果是偶数,说明没有半个中文。不用舍弃。
如果是奇数,说明有半个中文出现,舍弃最后一个位元组。
*/
public class EncodeTest {
public static String cutString(String str,int len)throws Exception
{
byte[] buf = str.getBytes("GBK");
int count = 0;
for(int x=len-1; x>=0; x--)
{
if(buf[x]<0)
count++;
else
break;
}
if(count%2==0)
return new String(buf,0,len);
else
return new String(buf,0,len-1);
}
public static void main(String[] args) throws Exception {
String str = " 我abc汉字 ,6";
int len = 6; 想要撷取的长度,不管长度为几,都不会出现半个中文字元
System.out.println(cutString(str,len));
}
}
Java 撷取字串
public String getString(String str,String str1 ){
int index = str1.indexOf(str); str1是想要开始撷取的字元。str是被撷取的字元。
return str.subString(index+1,str.length);
}
java中撷取字串
用java中String类里的split();方法 这一方法支援正则表示式
用法
String str=“1234567.1234”;
String [] strs = str.split("[.]");
就可以得到阵列 strs[0] =1234567; strs[1] =1234
java中subString撷取首位撷取字串末尾撷取字元
String str="(HOST = 192.168.1.217)";
String end = str.substring(str.length()-1);
end 就是你要的末尾值。
你的目的是不是就是只是为了获取埠号??
java string怎么撷取字串
通常使用subString方法进行字串的撷取
特殊情况, 使用splite方法,对字串进行切割
但都不会影响到原始的字串的资料
参考程式码
public class Test { public static void main(String[] args) { String str= "abc苹果def";下标和阵列 一样, 也是从0开始 String str1 = str.substring(3, 5);下标包含3,不包含5 .也就是下标是3~4 String str2=str.substring(6);从下标6 开始,直到结束 String[] ss = str.split("苹果");使用字串切割 String str3 = ss[0];abc String str4 = ss[1];def System.out.println(str);原始字串,不会改变 System.out.println(str1); System.out.println(str2); System.out.println(str3); System.out.println(str4); }}
输出
abc苹果def苹果efabcdef