2 u011954277 u011954277 于 2016.03.18 19:52 提问

c# 截取字符串的问题 如果在一串字符中id 在100行

c# 截取字符串的问题 如果在一串字符中id 在100行 我要获取id后面的10个数字 请问怎么截取呢

7个回答

caozhy
caozhy   Ds   Rxr 2016.03.18 19:56
已采纳
 string[] lines = s.Split(new string[] {"\r\n"}, StringSplitOptions.None);
string s = lines[99];
string result = Regex.Match(s, "(?<=id)\\d{10}").Value;
caozhy
caozhy 哪里id后面有10位数字??
一年多之前 回复
u011954277
u011954277 en 贴出来了 很长
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 你的原始字符串贴出来
一年多之前 回复
u011954277
u011954277 我试了 result 是个空
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 是的
一年多之前 回复
u011954277
u011954277 string result = Regex.Match(s, "(?<=id)\\d{10}").Value; s还是元数据吗?
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 是啊
一年多之前 回复
u011954277
u011954277 在一个文本框内 有很多字符串 我需要找到id 并且获取它之后10位数显示出来
一年多之前 回复
caozhy
caozhy 如果不管行,直接找id后面10个数字,直接string result = Regex.Match(s, "(?<=id)\\d{10}").Value;
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 看你要做什么
一年多之前 回复
u011954277
u011954277 好吧 那请教现在该怎么改呢
一年多之前 回复
caozhy
caozhy 回复小菜来袭: IndexOf获得的是字符数,不是行数
一年多之前 回复
u011954277
u011954277 我是这么获取行数的
一年多之前 回复
u011954277
u011954277 string str = textBox1.Text; int n = str.IndexOf("id"); MessageBox.Show("" + n);
一年多之前 回复
u011954277
u011954277 string str = textBox1.Text; int n = str.IndexOf("id"); MessageBox.Show("" + n);
一年多之前 回复
u011954277
u011954277 string str = textBox1.Text; int n = str.IndexOf("id"); MessageBox.Show("" + n);
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 你有100行么
一年多之前 回复
u011954277
u011954277 string s = lines[99]; 这是总是报数组超出界限 我写多了 又报算数溢出
一年多之前 回复
caozhy
caozhy 回复小菜来袭: s就是你的原始数据
一年多之前 回复
u011954277
u011954277 第一行s从那里定义的?
一年多之前 回复
u011954277
u011954277   2016.03.18 20:36

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.test.org/DTD/xhtml-mobile10.dtd">




test

kground-color:#daeaf4;color:#666;text-align:center;padding-top:5px;padding-bottom:5px} .t10{padding-left:10px;padding-bottom:5px} /* foot */ .t01{line-height:20px;padding:5px 5px 3px 5px;} /* 我的首页css */ .thot{line-height:1.7;color:#646464;border:1px solid #d1e3f0} /* 热门关键字 */ .thot a{margin-right:7px;white-space:nowrap} .t2 textarea{margin-top:5px;margin-bottom:3px} .t4 a img{margin:3px 0} .nob{border:none} .tp a{padding:0 5px} .meta{color:#888;font-weight:normal;padding:0 5px} .txt{margin-bottom:5px} .btn{border:1px solid #666} .btn{border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #808080;border-bottom:1px solid #808080} .pl5,.cl5{line-height:1.4; padding-left:5px} .mContent .pl5{padding-left:0} .mTitle{border:1px solid #d1e3f0;background-color:#e0eef8;color:#888;} .item{line-height:1.4;border-bottom:1px dashed #A8A8A8;padding:10px; } .userlist{border-bottom:1px dotted #888888;margin-top:1px;padding-bottom:1px;} #logo{background:#91bbd7;padding:5px 0 5px 0;height:24px} .t8 .meta{padding:0;font-weight:normal} .t3 span{color:#888} .t11{padding:5px; margin:3px 2px 0 2px;} .t11 td{text-align:left;} #table {clear:both;} #table ul {width:500px;list-style:none} #table li {border:1px solid #ccc;float:left;height:22px;text-align:center;line-height:22px}



首页

登录成功! 1

1。

如果10秒后未跳转,请直接访问

回顶部 top↑ 普版

首页-导航-反馈


caozhy
caozhy   Ds   Rxr 2016.03.18 20:38

哪里id后面有10位数字??

u011954277
u011954277 好了 出啦了
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 不知道你在说什么
一年多之前 回复
u011954277
u011954277 有的 好像是用了标签然后 回答的时候被执行了
一年多之前 回复
u011954277
u011954277   2016.03.18 20:45
 <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="application/vnd.wap.xhtml+xml;charset=UTF-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<title>test</title>
<meta http-equiv="Cache-Control" content="max-age=" forua="true"/>
<meta name="viewport" content="width=device-width" />

<style>  html,body,p,form,table,input,span,div{font-size:14px;word-wrap:break-word;font-family:Arial,sans-serif} textarea{width:93%;font-size:14px}  body{background:#f7fcff;color:#000;padding:0;margin:0;font-family:Arial,sans-serif;} p,form,a,h3{margin:0} img{border:none} a{color:#15478d;text-decoration:none} h3{font-size:14px;font-weight:bold} input.text{width:150px} img.photo-48{width:48px;height:48px} img.photo-130{width:130px} img.photo-full{margin:1px 0} .red{color:#f00} .time{color:#888} .error{background-color:#ffece6;border:1px solid #ffe1d8}  /* 发布失败 */ .tip{background-color:#f1ffc3;border:1px solid #e1f2a7;padding-left:5px;margin:3px 0} /* 发布成功 */ .ok{padding:3px 5px;margin:5px 0;background-color:#fff} .t1,.t2,.t3,.tcontent,.t7,.thot,.error,.tip,.ok,.mTitle{padding:5px;margin:3px 2px 0 0} tcontent{padding:5px;margin:3px 2px 0 2px} .t0{background:#91bbd7;padding:3px 2px 3px 0;height:35px;} /* logo */ .t1{border:1px solid #aacce3;background-color:#ddedf8;} /* title & topNav*/ .t1 b{font-weight:normal;} .t2{border:1px solid #d1e3f0;background-color:#e0eef8;color:#888} /* inputarea*/ .t3{border:1px solid #d1e3f0}    .tcontent{border:0px} /*  提示信息(只有边框的) */ .t4{border-bottom:1px dashed #a8a8a8;padding:10px;line-height:1.4}    /* 单条 */ .t6{color:#888} /* 统计信息 */ .t6 span{padding-right:10px}   .t7{border:1px solid #f1d58a;background-color:#f5f1c3}  /* 有色提示信息 tip*/ .t8{line-height:1.4} /* 行高1.4,没有边距(只用来扩大行高用)*/ .tp{border-bottom:1px dashed #a8a8a8;padding:10px;color:#888}   /* 翻页 */ .t9{background-color:#daeaf4;color:#666;text-align:center;padding-top:5px;padding-bottom:5px} .t10{padding-left:10px;padding-bottom:5px}  /* foot */ .t01{line-height:20px;padding:5px 5px 3px 5px;} /* 我的首页css */ .thot{line-height:1.7;color:#646464;border:1px solid #d1e3f0}  /* 热门关键字 */ .thot a{margin-right:7px;white-space:nowrap} .t2 textarea{margin-top:5px;margin-bottom:3px} .t4 a img{margin:3px 0} .nob{border:none} .tp a{padding:0 5px} .meta{color:#888;font-weight:normal;padding:0 5px} .txt{margin-bottom:5px} .btn{border:1px solid #666} .btn{border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #808080;border-bottom:1px solid #808080} .pl5,.cl5{line-height:1.4; padding-left:5px} .mContent .pl5{padding-left:0} .mTitle{border:1px solid #d1e3f0;background-color:#e0eef8;color:#888;} .item{line-height:1.4;border-bottom:1px dashed #A8A8A8;padding:10px; } .userlist{border-bottom:1px dotted #888888;margin-top:1px;padding-bottom:1px;} #logo{background:#91bbd7;padding:5px 0 5px 0;height:24px} .t8 .meta{padding:0;font-weight:normal} .t3 span{color:#888} .t11{padding:5px; margin:3px 2px 0 2px;} .t11 td{text-align:left;} #table {clear:both;} 
#table ul {width:500px;list-style:none} 
#table li {border:1px solid #ccc;float:left;height:22px;text-align:center;line-height:22px}
</style>

</head>
<body>
<a name="top"></a>
<div class="t0"><a href="http://wap.test.cn"><img src="http://wap.test.cn/img/logo.png" alt="11" /></a></div>
<div class="tcontent">
<meta http-equiv="refresh" content="10 url=/test.php?id=1122334455676770" /><p class="t1">登录成功! <a href='/test.php?id=112233445567677'>。</div><p class="t7">如果10秒后未跳转,请<a href='/test.php?id=112233445567677'></a></p>
<div class="t3">
<a href="/my_friend_m.php?uid=a63348816c50b10b7b267c4e6788f470">返回</a><br/>
</div>
<p class="t3">

    <a href="#top">回顶部&nbsp;top↑</a>  <a href="http://wap1.feelyou.cn">普版</a>
</p>


<p class="t4 nob">
<a href="/search_user.php?id=112233445567677" >首页</a>-<a href="/test.php?id=112233445567677">导航</a>-<a href="/test.php?id=112233445567677" >反馈</a> <img border="0" height="1px" width="1px" src="http://img.users.51.la/5376029.asp" />
</p>
</div>
<p id="footer" class="t9">  
</p>

</body>
</html>
caozhy
caozhy   Ds   Rxr 2016.03.18 20:45
 string result = Regex.Match(textBox1.Text, "(?<=id)\\d{10}").Value;

这个应该是可以的。

u011954277
u011954277 恩恩 我换成10 也是空
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 而且不是告诉你不要切分了,怎么还写
一年多之前 回复
caozhy
caozhy 回复小菜来袭: d{33}干什么,你最多只有15个数字
一年多之前 回复
u011954277
u011954277 string str = textBox1.Text; int n = str.IndexOf("uid"); MessageBox.Show("" + n); string[] lines = textBox1.Text.Split(new string[] { "\r\n" }, StringSplitOptions.None); // string s; string result = Regex.Match(textBox1.Text, "(?<=id)\\d{10}").Value; textBox12.Text = result;
一年多之前 回复
u011954277
u011954277 string str = textBox1.Text; int n = str.IndexOf("uid"); MessageBox.Show("" + n); string[] lines = textBox1.Text.Split(new string[] { "\r\n" }, StringSplitOptions.None); // string s; string result = Regex.Match(textBox1.Text, "(?<=uid)\\d{33}").Value; textBox12.Text = result;
一年多之前 回复
u011954277
u011954277 还是为空 什么都没有
一年多之前 回复
caozhy
caozhy   Ds   Rxr 2016.03.18 20:46
 string result = Regex.Match(textBox1.Text, "(?<=id\=)\\d{10}").Value;

你id后面还有一个等于号,用这个

u011954277
u011954277 怎么弄成 string result = Regex.Match(textBox1.Text, "(?<=id\=)\\d{10}").Value; 还有可以输入字符串呢 也是截取10位数
一年多之前 回复
caozhy
caozhy   Ds   Rxr 2016.03.18 20:46
 string result = Regex.Match(textBox1.Text, "(?<=id\\=)\\d{10}").Value;
u011954277
u011954277 这个怎么弄呢
一年多之前 回复
u011954277
u011954277 我还是只要取10个 以为我要取的那10个里面可能有字符串
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 不是,有多少取多少,{10}是取10个
一年多之前 回复
u011954277
u011954277 string result = Regex.Match(textBox1.Text, "(?<=id\\=)\\[a-fA-F0-9]+").Value; 还是会取 后10位是吧
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 不要那个{10}
一年多之前 回复
u011954277
u011954277 string result = Regex.Match(textBox1.Text, "(?<=id\\=)\\[a-fA-F0-9]+{10}").Value; ?
一年多之前 回复
caozhy
caozhy 回复小菜来袭: 匹配那个十六进制的?用[a-fA-F0-9]+
一年多之前 回复
u011954277
u011954277 现在情况是还有字符串
一年多之前 回复
u011954277
u011954277 我知道了 它只支持数字
一年多之前 回复
u011954277
u011954277 恩这句删除了 还是为空
一年多之前 回复
caozhy
caozhy 回复小菜来袭: string[] lines = textBox1.Text.Split(new string[] { "\r\n" }, StringSplitOptions.None); 这个删除了吧
一年多之前 回复
u011954277
u011954277 可以 ;匹配出来的
一年多之前 回复
caozhy
caozhy 你把textbox的东西都删除,输入"id=1111111111",看看能匹配出来么
一年多之前 回复
u011954277
u011954277 string result = Regex.Match(textBox1.Text, "(?<=id\\=)\\d{10}").Value; 也是为空
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!