using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace ExtractTime
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
//--
string[] strlist = {"年","月","日" };
string strs = "日期: 2018年07月31日"; //xx年xx月xx日
strs = textBox1.Text; var test = ff(strs);
string[] temp = test.Split(new char[] { '#'}, StringSplitOptions.RemoveEmptyEntries); strs = strs.Replace(" ",""); //日期:2018年07月31日
var cut = "";bool Mouthbl = false;
//查询第一个年字所在位置
for (int i=;i<strs.Length;i++)
{
cut = strs.Substring(i,); //截取一个字符
if (cut.Contains("年")) //当前字符是年字
{
//查找月字
for (int ii = i; ii < strs.Length; ii++)
{
cut = strs.Substring(ii, ); //截取一个字符
if (cut.Contains("月")) //当前字符是月字
{
//包含月字
Mouthbl = true;
var x = i;
var y = ii;
if (y-x<=&& y - x > ) //年月,a年a月,aa年aa月
{
//截取字符串
if (i>=)
{
var year = strs.Substring(i-,); //截取4个
//验证该字符串是否是数字(略)
var mouth = strs.Substring(ii - , ).Replace("年",""); //截取月
var day = "";
//截取日
if (strs.Length-(ii+)>=) //xx月xx日
{
day = strs.Substring(ii,).Replace("月","");
}
textBox2.Text = year + mouth + day; break; }
} }
}
if (Mouthbl)
{
break; //包含月
}
}
} } private void button2_Click(object sender, EventArgs e)
{ // Newmode.CompileDate = Convert.ToDateTime(CompileDate); //时间 字符串转时间
textBox1.Text = "";
textBox2.Text = "";
}
public string ff(string strs)
{
string result = ""; strs = strs.Replace(" ", ""); //日期:2018年07月31日
var cut = ""; bool Mouthbl = false;
//查询第一个年字所在位置
for (int i = ; i < strs.Length; i++)
{
cut = strs.Substring(i, ); //截取一个字符
if (cut.Contains("年")) //当前字符是年字
{
//查找月字
for (int ii = i; ii < strs.Length; ii++)
{
cut = strs.Substring(ii, ); //截取一个字符
if (cut.Contains("月")) //当前字符是月字
{
//包含月字
Mouthbl = true;
var x = i;
var y = ii;
if (y - x <= && y - x > ) //年月,a年a月,aa年aa月
{
//截取字符串
if (i >= )
{
var year = strs.Substring(i - , ); //截取4个
//验证该字符串是否是数字(略)
var mouth = strs.Substring(ii - , ).Replace("年", ""); //截取月
if (mouth.Length == ) //位数为1补0
{
mouth = "" + mouth;
}
var day = "";
//截取日
if (strs.Length - (ii + ) >= ) //xx月xx日
{
day = strs.Substring(ii, ).Replace("月", "");
if (day.Length==)////位数为1补0
{
day = "" + day;
}
}
result = year+"#" + mouth + "#" + day;
break; }
} }
}
if (Mouthbl)
{
break; //包含月
}
}
}
return result;
}
}
}

最新文章

  1. 用Access作为后台数据库支撑,书写一个用C#写入记录的案例
  2. mysql替换制定的内容的 类似正则表达式的功能
  3. centos7.1-64bit安装qtcreator
  4. 窗体皮肤实现 - 在VC中简单实现绘制(五)
  5. nodejs的require模块及路径
  6. DEEPIN下搭建FTP服务器步骤(备忘录)
  7. LeetCode 344
  8. (转) mysql数据库引擎:MyISAM和InnoDB(性能优化)
  9. Combotree,datebox 启用 禁用
  10. 开启新的activity获取它的返回值
  11. JavaScript高级程序设计:第十二章
  12. jdbc批量执行SQL insert 操作
  13. BNU OJ 50998 BQG&#39;s Messy Code
  14. SPI FLASH与NOR FLASH的区别?
  15. Vs2017 typescript 开发小问题
  16. https://www.cnblogs.com/h2zZhou/p/5440271.html
  17. servlet转发重定向
  18. 遇到CloudFlare邮箱混淆,如何解密?
  19. c++中队列queue和栈stack的基本操作
  20. u3d静态函数

热门文章

  1. MTK 电池曲线配置【转】
  2. YTU 2897: E--外星人供给站
  3. YTU 1009: University
  4. Ural2089:Experienced coach(二分图匹配)
  5. Tomcat 在Mac OS X中的安装和配置
  6. Winpcap笔记3之打开适配器并捕获数据包
  7. SSM框架手动搭建
  8. 由 var str = &#39;hello world&#39; str.attr =&#39;666&#39;; 到包装类型
  9. shiro 登录
  10. pytest的参数化