路过的帮下,谢谢,急。
我的一个textbox控件里有如下值:
出售 黄浦区 中山南路200弄 四室二厅 南 28 209.58 880.00 万元
出售 黄浦区 中山南路398弄 四室三厅 南 32 288.55 980.00 万元
出售 黄浦区 中山南路200弄 三室二厅 南 32 170.72 550.00 万元
出售 黄浦区 陆家浜路521弄 二室二厅 南 33 84.13 140.00 万元
出售 黄浦区 多稼路208号 三室二厅 南 24 126.26 147.00 万元
出售 黄浦区 陆家浜路521弄 二室二厅 南 33 123.19 180.00 万元
出售 黄浦区 陆家浜路305弄 二室二厅 南 30 122.58 177.00 万元
出售 黄浦区 陆家浜路521弄 二室二厅 南 33 123.19 215.00 万元
出售 黄浦区 中山南路398弄 二室二厅 南 31 110.97 260.00 万元
出售 黄浦区 中华路88弄 三室二厅 南 32 155.29 350.00 万元
出售 黄浦区 陆家浜路305弄 三室二厅 南 31 137.56 250.00 万元
出售 黄浦区 陆家浜路305弄 三室二厅 南 30 140.56 240.00 万元
出售 黄浦区 陆家浜路305弄 三室二厅 南 30 136.33 190.00 万元
出售 黄浦区 中山南路398弄 二室二厅 南 18 116 235.00 万元
出售 黄浦区 中山南路398弄 二室二厅 南 32 164.98 550.00 万元
我想取出 它的 路和弄 放到一个dataset里。
?怎样实现。谢谢.
最好有代码------
例如:中山南路200弄
[解决办法]
如果都是这样格式的,你可以这样
string aa = "出售 黄浦区 陆家浜路521弄 二室二厅 南 33 84.13 140.00 万元 ";
string bb = aa.Substring(aa.IndexOf( "区 ")+1, aa.IndexOf( "弄 ") - aa.IndexOf( "区 "));
Response.Write(bb);
[解决办法]
很有规律,可以用正则表达式试试:
string sourceString = @ "出售 黄浦区 中山南路200弄 四室二厅 南 28 209.58 880.00 万元
出售 黄浦区 中山南路398弄 四室三厅 南 32 288.55 980.00 万元
出售 黄浦区 中山南路200弄 三室二厅 南 32 170.72 550.00 万元
出售 黄浦区 陆家浜路521弄 二室二厅 南 33 84.13 140.00 万元
出售 黄浦区 多稼路208号 三室二厅 南 24 126.26 147.00 万元
出售 黄浦区 陆家浜路521弄 二室二厅 南 33 123.19 180.00 万元
出售 黄浦区 陆家浜路305弄 二室二厅 南 30 122.58 177.00 万元
出售 黄浦区 陆家浜路521弄 二室二厅 南 33 123.19 215.00 万元
出售 黄浦区 中山南路398弄 二室二厅 南 31 110.97 260.00 万元
出售 黄浦区 中华路88弄 三室二厅 南 32 155.29 350.00 万元
出售 黄浦区 陆家浜路305弄 三室二厅 南 31 137.56 250.00 万元
出售 黄浦区 陆家浜路305弄 三室二厅 南 30 140.56 240.00 万元
出售 黄浦区 陆家浜路305弄 三室二厅 南 30 136.33 190.00 万元
出售 黄浦区 中山南路398弄 二室二厅 南 18 116 235.00 万元
出售 黄浦区 中山南路398弄 二室二厅 南 32 164.98 550.00 万元 ";
string pattern = @ "(? <=出售\s[^\s]*\s)[^\s]+ ";
System.Text.RegularExpressions.Match result = Regex.Match(sourceString,pattern,System.Text.RegularExpressions.RegexOptions.IgnoreCase|System.Text.RegularExpressions.RegexOptions.Multiline);
while(result.Success)
{
WL( "正确: " + result.Value);//输出
result = result.NextMatch();
}
-------------------------------------------
MSN:bdbox@hotmail.com
请给我与您交流的机会
[解决办法]
建议改用Split实现
[解决办法]
路过,不懂,帮顶
[解决办法]
string[] arr;
arr = DateTxt.Split( ' ');
foreach (string str in arr)
{
//写到dateset中
}
[解决办法]
我就搞不懂,楼主的这些信息是咱来的,为什么不是输入的时候就进行好控制啊
是不是从别人那里偷来的咯
[解决办法]
// 如果每行以 硬回车符 结束 的话,那么可以这样简单处理
// 已测试,OK
DataTable dt = new DataTable();
dt.Columns.Add( "类型 ", typeof(string));
dt.Columns.Add( "区域 ", typeof(string));
dt.Columns.Add( "地址 ", typeof(string));
dt.Columns.Add( "结构 ", typeof(string));
dt.Columns.Add( "方向 ", typeof(string));
dt.Columns.Add( "什么 ", typeof(string));
dt.Columns.Add( "价格1 ", typeof(decimal));
dt.Columns.Add( "价格2 ", typeof(decimal));
dt.Columns.Add( "单位 ", typeof(string));
string str = System.Text.RegularExpressions.Regex.Replace(TextBox1.Text, @ "\\n*\\r* ", @ "\n ");
HtmlPreWriter.Flush(TextBox1.Text);
HtmlPreWriter.Flush(str);
string[] lines = str.Split( '\n ');
foreach (string line in lines) {
HtmlPreWriter.Flush(line);
dt.Rows.Add(line.Trim().Split( ' '));
}
// out
GridView1.DataSource = dt;
GridView1.DataBind();