Java如何截取指定字符串

性别:女士|民族:汉族|生日:1990-9-22如何截取性别:到|民族之间的信息判断“性别:”和“|民族”之间的字符串截取成功之后还要赋值,Stringsex=“女士”S... 性别:女士|民族:汉族|生日:1990-9-22
如何截取 性别:到 |民族之间的信息
判断“性别:”和“|民族”之间的字符串
截取成功之后还要赋值,String sex=“女士” String brith=“1990-9-22

产生的数据都是变量
展开
 我来答
yugi111
推荐于2016-05-30 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.3亿
展开全部
String reg1 = ".*性别:([^\\|]*)\\|?.*";
String reg2 = ".*民族:([^\\|]*)\\|?.*";
String reg3 = ".*生日:([^\\|]*)\\|?.*";

String str = "性别:女士|民族:汉族|生日:1990-9-22";

String sex = str.replaceAll(reg1, "$1");
String mz = str.replaceAll(reg2, "$1");
String brith = str.replaceAll(reg3, "$1");
System.out.println (sex);
System.out.println (mz);
System.out.println (brith);
追问
正则表达式就是这个,问下你的reg1是匹配  性别: 到 |的吗??能不能匹配  性别 到 |民族
之间的
追答

都输出了啊,你可以试试啊,我测试是的啊


有图为证啊:


hx397809648
2015-09-22 · TA获得超过150个赞
知道答主
回答量:120
采纳率:0%
帮助的人:44.4万
展开全部
你的题意可能有点问题,都指定的字符串了,还截取吗?是不是截取指定字符串出现位置之后或之前的字符串?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
穿梭巴
2014-03-27 · TA获得超过132个赞
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:112万
展开全部
String info[] = 你定义的字符串.split("|");
字符串数组里面就是你要的了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幸福生活有肉吃
2014-03-27 · TA获得超过122个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:134万
展开全部
int start = str.indexOf(":");

int end = str.indexOf("|");
str = str.substring(start,end);
不知道截取包不包括end,你试试吧...
追问
截取成功还要赋值,你用:和 | 判断,我分不清哪个是性别,哪个是生日
追答
indexOf是顺序取第一个的么- -
赋值?用字符串替换么,那是replace...
或者就按他们说的,反正留着分隔符,用split割开,再取从:的start到length就行了吗
最后完了再拼起来..
String str;//要改的
String[] str1 = {"男人","羌族","1990-1-1"};
String[] strArr = str.split("|");
for(int i=0;i<strArr.length;i++){
String s1=strArr[i].substring(strArr[i].indexOf(":"),strArr[i].length);//s1就是每个冒号后面的值了么..

要替换就反过来截取么,把0到冒号截取下来,再粘上str1[i],最后用"|"连起来吗...

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
air0water
2014-03-27
知道答主
回答量:16
采纳率:0%
帮助的人:4.8万
展开全部
int startIndex = str.indexOf(":")+1;
int endIndex = str.indexOf("|");
String sex = str.substring(startIndex,endIndex);
int end = str.lastIndexOf(":")+1;
String birth = str.subString(end);
追问
截取之后我还要赋值
追答
现在这个可以了,你试下,性别和生日都可以取到
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式