C# 处理年月日提取时间
2024-08-30 19:36:01
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;
}
}
}
最新文章
- 用Access作为后台数据库支撑,书写一个用C#写入记录的案例
- mysql替换制定的内容的 类似正则表达式的功能
- centos7.1-64bit安装qtcreator
- 窗体皮肤实现 - 在VC中简单实现绘制(五)
- nodejs的require模块及路径
- DEEPIN下搭建FTP服务器步骤(备忘录)
- LeetCode 344
- (转) mysql数据库引擎:MyISAM和InnoDB(性能优化)
- Combotree,datebox 启用 禁用
- 开启新的activity获取它的返回值
- JavaScript高级程序设计:第十二章
- jdbc批量执行SQL insert 操作
- BNU OJ 50998 BQG&#39;s Messy Code
- SPI FLASH与NOR FLASH的区别?
- Vs2017 typescript 开发小问题
- https://www.cnblogs.com/h2zZhou/p/5440271.html
- servlet转发重定向
- 遇到CloudFlare邮箱混淆,如何解密?
- c++中队列queue和栈stack的基本操作
- u3d静态函数
热门文章
- MTK 电池曲线配置【转】
- YTU 2897: E--外星人供给站
- YTU 1009: University
- Ural2089:Experienced coach(二分图匹配)
- Tomcat 在Mac OS X中的安装和配置
- Winpcap笔记3之打开适配器并捕获数据包
- SSM框架手动搭建
- 由 var str = &#39;hello world&#39; str.attr =&#39;666&#39;; 到包装类型
- shiro 登录
- pytest的参数化