首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于截取两个特定字符串之间的字符串有关问题

2012-03-22 
关于截取两个特定字符串之间的字符串问题!有下面一个字符串:C# codestring str简 历 个人信息 姓 名: 张

关于截取两个特定字符串之间的字符串问题!
有下面一个字符串:

C# code
string str="简 历 个人信息 姓 名: 张三 性 别: 男 出生日期: 1984年6月20日 居 住 地: 北京 工作年限: 三年以上 电子邮件: admin@163.com 手 机: 086- 15864321500 目前年薪: 6-8万人民币.... ";


如何解析成下面的形式:
基本个人信息 
姓名: 张三 性别: 男  
出生年月: 1984年06月20日 工作经验: 3年  
手机 15864321500
所在地区: 北京 
电子邮箱: admin@163.com 
目前年薪: 6-8万人民币

把str中的姓名、性别等分别解析然后显示出来。

Thanks!~~
 


[解决办法]
没什么规律,貌似只能
var start=str.indexOf("姓名");
var end=str.indexOf(" ",start);
string name=str.substring(start,end)
[解决办法]
邦定
[解决办法]
个人认为这样有问题的
你的那个字符串信息那里来的

[解决办法]
这样不好处理!


[解决办法]
问下过客
[解决办法]
探讨
看了好像要用正则表达式  不过对那不熟悉,希望大家帮忙解决,谢谢。

[解决办法]
探讨
引用:
引用:
看了好像要用正则表达式  不过对那不熟悉,希望大家帮忙解决,谢谢。


我就想问你的那个字符串那里来的



其实我之前就发过一个帖子,都没回答上来,看看这个链接:
http://topic.csdn.net/u/20091012/14/a9f9054c-9c92-4792-9188-e69410f057b9.html


[解决办法]
不好意思
这个不会
你去问下
过客(http://hi.csdn.net/lxcnn )

[解决办法]
貌似也不是
一两下能够解决的
[解决办法]
好像没有什么规律
[解决办法]
是不是可以用": "进行分割
[解决办法]
www.unsbiz.com这个网站就挺SB的,你问问他从别的简历网粘过来的简历好使不?估计也就是人工分割的,我想也是类似1楼的做法,因为本身能发布到51job的简历就已经带有基本格式规范了.所以有些情况不用去多考虑,应该比较简单,有空试下往里边写点脚本,看看它能不能反应过来.
[解决办法]
没有规律,如何解析。楼主解决了告诉我一声
[解决办法]
C# code
public string[] strArr = { "姓 名", "性 别", "出生日期", "居 住 地", "工作年限", "电子邮件", "手 机", "目前年薪" };        protected void Page_Load(object sender, EventArgs e)        {            string str = "简 历 个人信息 姓 名: 张三 性 别: 男 出生日期: 1984年6月20日 居 住 地: 北京 工作年限: 三年以上 电子邮件: admin@163.com 手 机: 086- 15864321500 目前年薪: 6-8万人民币.... ";            ChangeNews(ref str, strArr);            string strNew = str;            ClientScript.RegisterStartupScript(this.GetType(), "", str);        }        private void ChangeNews(ref string str, string[] arr)        {            for (int i = 0; i < arr.Length; i++)            {                int j = str.IndexOf(arr[i]);                if (j > 0)                {                    str = str.Insert(j, "<br>");                }            }        }
[解决办法]
没固定规律怎么取字符串。。?
[解决办法]
分割的效果不是很理想,上面这个perfect.

探讨
C# codepublicstring[] strArr= {"姓 名","性 别","出生日期","居 住 地","工作年限","电子邮件","手 机","目前年薪" };protectedvoid Page_Load(object sender, EventArgs e)
{string str="简 历 个人信息 姓 名: 张三 性 别: 男 出生日期: 1984年6月20日¡­

[解决办法]
这些固定字符,可以直接来用就可以了,直接截取,就ok
否则没规律,即使它是正则
[解决办法]
比较怪异的一说!

这个是http://www.unsbiz.com/job/onekey.jsp中的一段代码,看样子应该用的是Fckeditor类似的东西实现的
文本框!

HTML code
<div id="iOneLabelBox1">    <textarea name="jobResumeContent" cols="120" rows="20" onblur="javascript:this.value=trim(this.value);"></textarea></div>
[解决办法]
只能根据字符分割了。。。
[解决办法]
要截取的空两格行不。。
[解决办法]
藐视没有楼主没有设置分隔符,没有规律,怎么区分?

方案:a设置分割符,用户不能录入分隔符;
b用数组
c其他
[解决办法]
假设文本字段不会有先后顺序的变化的话,可以这样

C# code
            string str = "简 历 个人信息 姓 名: 张三 性 别: 男 出生日期: 1984年6月20日 居 住 地: 北京 工作年限: 三年以上 电子邮件: admin@163.com 手 机: 086- 15864321500 目前年薪: 6-8万人民币.... ";            Regex r = new Regex(@"(姓\s*名):\s*(.+)\s*(性\s*别):\s*(.+)\s*(出\s*生\s*日\s*期):\s*(.+)\s*(居\s*住\s*地):\s*(.+)\s*(工\s*作\s*年\s*限):\s*(.+)\s*(电\s*子\s*邮\s*件):\s*(.+)\s*(手\s*机):\s*(.+)\s*(目\s*前\s*年\s*薪):\s*(.+)\s*");            var m = r.Matches(str);            for (int i = 0, l = m.Count; i < l; ++i)            {                System.Console.WriteLine(String.Format("{0}--{1}", i, m[i].Value));                for (int j = 0, p = m[i].Groups.Count; j < p; ++j)                {                    var g = m[i].Groups[j];                    System.Console.WriteLine(String.Format("\t{0}--{1}", j, g.Value));                }            }            System.Console.ReadKey();
[解决办法]
没规律啊。。。怎样分割?为什么要分割。自己想分割的话应该定义些有规律的
[解决办法]
探讨
其实我之前就发过一个帖子,都没回答上来,看看这个链接:
http://topic.csdn.net/u/20091012/14/a9f9054c-9c92-4792-9188-e69410f057b9.html

[解决办法]
<script>
var str="简 历 个人信息 姓 名: 张三 性 别: 男 出生日期: 1984年6月20日 居 住 地: 北京 工作年限: 三年以上 电子邮件: admin@163.com 手 机: 086- 15864321500 目前年薪: 6-8万人民币.... ";
var reg = new RegExp("\\s(.{3,4}:)[ ]?(.*?)[ ]((.{3,5}:)|$)");
var i = 0;
var c = 0;
while(true)
{
str = str.substr(i);
var m = str.match(reg, 20);
if(m == null) break;
i = m.lastIndex - m[3].length - 1;
c++;
alert(m[1] + "" + m[2]);
}
alert(c + "个参数");
</script>
[解决办法]
JScript code
<script>var str="简 历 个人信息 姓 名: 张三 性 别: 男 出生日期: 1984年6月20日 居 住 地: 北京 工作年限: 三年以上 电子邮件: admin@163.com 手 机: 086- 15864321500 目前年薪: 6-8万人民币.... ";var reg = new RegExp("\\s(.{3,5}:)[ ]?(.*?)[ ]((.{3,5}:)|$)");var i = 0;var collection = [];while(true){    str = str.substr(i);    var m = str.match(reg, 20);    if(m == null) break;    i = m.lastIndex - m[3].length - 1;    collection.push({Key: m[1], Value: m[2]});    collection[m[1]] = m[2]}var s = ""for(var i = 0;i < collection.length; i++){    var item = collection[i];    s += item.Key + (item.Key.length > 4 ? "\t" : "\t\t") + item.Value + "\r\n";}alert(collection.length + "个参数\r\n" + s);alert(collection["手 机:"]);window.close();</script> 


[解决办法]
始终关注!
[解决办法]
没规律用正则也白搭啊
[解决办法]
没正则很好的,客客的正则没错。
规律,不要紧。
[解决办法]
正则太麻烦了,就用F19firesea(绝版樱木)的方法就很好
[解决办法]

探讨
要截取的空两格行不。。

[解决办法]
帮你顶,还是得有规律才好普遍来处理

热点排行