关于截取两个特定字符串之间的字符串问题!
有下面一个字符串:
- 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://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.
[解决办法]
这些固定字符,可以直接来用就可以了,直接截取,就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();
[解决办法]
没规律啊。。。怎样分割?为什么要分割。自己想分割的话应该定义些有规律的
[解决办法]
[解决办法]
<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(绝版樱木)的方法就很好
[解决办法]
[解决办法]
帮你顶,还是得有规律才好普遍来处理