如何取一个字符串遇到某个字符之前的部分

比如一个字符串abc.efg,我想取 “.”之前的部分,但是“.”之前的部分可能是一个,也可能是两个或三个,如何取出来?

先说一下思路,首先获取一下,你想要截取的分割符在整个串中的位置
比如你说的.这个分割符在整个abc.efg中的位置。
可以采用indexof操作来获取他的位置。
有了这个位置之后,就可以使用substring函数来截取字符串了
从第一个字符截取到.(不包含.)
String temp="abc.efg";
int leng=temp.indexof(".");
String result=temp.substring(0,leng);
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-05
可以采用选择字符串子串的方法:
String str = "abc.efg";
String result = str.substring(0,str.indexof("."));
这个result字符串就是最后要的结果。
第2个回答  2011-05-05
Tokenizerextends 类允许应用程序将字符串分解为标记。StringTokenizer 方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释。
可以在创建时指定,也可以根据每个标记来指定分隔符(分隔标记的字符)集。
public StringTokenizer(String str,
String delim)为指定字符串构造一个 string tokenizer。delim 参数中的字符都是分隔标记的分隔符。分隔符字符本身不作为标记。

下面是一个使用 tokenizer 的实例。代码如下:
StringTokenizer st = new StringTokenizer("this.is.a.test",".");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}

输出以下字符串:

this
is
a
test

如何取一个字符串遇到某个字符之前的部分?
先说一下思路,首先获取一下,你想要截取的分割符在整个串中的位置\\x0d\\x0a比如你说的.这个分割符在整个abc.efg中的位置。\\x0d\\x0a可以采用indexof操作来获取他的位置。\\x0d\\x0a有了这个位置之后,就可以使用substring函数来截取字符串了\\x0d\\x0a从第一个字符截取到.(不包含.)\\x0d\\...

如何提取字符串中特定字符前或后的内容?
1、如下图,要提取#后面的字符,也即红色的SDK到B列。2、首先,在B2中输入公式:=FIND(#,A2),返回#在字符串中的位置,#在A2单元格文本中是第6个字符。3、知识点说明:FIND()函数查找第一参数在第二参数中的位置。如下图,查找B在ABCD中是第几个字符。第一参数是要查找的字符B,第二参数是...

如何提取指定字符前面的字符
1. 首先打开电脑上想要编辑的Excel表格,如图,想要提取“.”字符前面的字符 2. 如图,我们可以看到,.之前的字符串长短不一,我们选择使用FIND函数来确定小数点的位置,然后再确定截取的字符的个数。FIND函数就是可以返回字符在字符串中的起始位置。3. 接下来,在B2单元格,输入公式:=LEFT(A2,FIND(...

如何截取字符串的前后部分?
针对SQL Server的实现:当需截取字符串"OPE-CZ-108-003-SE71.2"中的"."字符前面的字符串时,可以采用如下SQL语句。结果为"OPE-CZ-108-003-SE71",取值范围从字段第一位置开始,至"."字符前一个位置结束。对于截取"."字符后面的字符串,同样使用SQL Server,只需调整SQL语句,从"."字符后一位...

EXCEL取某个特定字符前的字符?
可用LEFT 函数和FIND 函数组合来取。1、以excel2010版本为例,首先打开A列有如下数字的文档;2、然后在B2单元格输入LEFT函数,表示从一个文本字符串的第一个字符开始返回指定个数的字符;3、再输入FIND函数,指的是返回一个字符串在另一个字符串中出现的起始位置;4、如图,FIND函数里指的是在A1单元...

PHP截取一个字符串里某个符号前面的字符串
回答:最简单的应该是用strstr()函数,如: echo strstr( '111|aaa|222|bbb', '|', TRUE ) \/\/ 输出:111 函数具体说明可以自己去查手册,http:\/\/www.php.net\/manual\/zh\/function.stristr.php

VB程序设置问题:如何提取指定字符串之前的字符串
1、使用Left$(string, length)函数(Left$也可以用Left替换,string字符串、length截取的长度)和InStr([start,] string1, string2 [, compare])(start起始位置、string1字符串、string2要搜索字符串、compare:0使用二分搜索、1区分大小写)函数Left$("123456", Instr("123456", "56")) 2、VB...

Excel如何在一个字符串中提取一个字符到另一个第一次出现字符之间的内容...
比如数据在A1,公式:=mid(a1,find("代码:",a1)+3,100)如果你的举例中的结果是不包括“36T”的话,公式为:=MID(LEFT(A1,MAX(IF(MID(A1,ROW(1:100),1)=",",ROW(1:100)))-1),FIND("代码:",A1)+3,100)摁 SHIFT+CTRL+回车 结束公式的输入。

oracle中如何截取字符串中,某个字符前的字符串? 例如截取字符串210-1106...
oracle中,截取某个字符串前的字符需要用instr函数和substr函数共同完成。工具:oracle 10g 步骤:1、以截取字符串“210-1106000001”中“-”前的部分为例。2、执行语句为:select substr('210-1106000001',1,instr('210-1106000001','-')-1) from dual;3、结果为:instr函数语法:instr( string1, ...

如何截取字符串中某个字符前的字符串
\/\/javaString old = "abcdefkghijklmnopqrstuvwxyz";System.out.println("从前往后数第一个\\"k\\"之前的字符串: " + old.substring(0, old.indexOf('k')));System.out.println("从后往前数第一个\\"k\\"之前的字符串: " + old.substring(0, old.lastIndexOf('k')));...

相似回答