String_Helper
#region 扩展验证方法
#region <<IsNullOrEmpty()字符串是否为空>>
/// <summary>
/// <para>代码说明:</para>
/// <para> 验证字符串是否为null、Empty、空</para>
/// <para> 如果满足以上条件则返回 true 否则返回 false</para>
/// </summary>
/// <param name="source">字符串</param>
/// <returns>是否为null、Empty、空</returns>
public static bool IsNullOrEmpty(this string source)
{
if (source == null) return true;
return string.IsNullOrEmpty(source.Trim());
}
#endregion
#region <<IsEmail()字符串是否为邮箱>>
/// <summary>
/// <para>代码说明:</para>
/// <para> 验证字符串是否为邮箱</para>
/// <para> 如果字符串为邮箱则返回 true 否则返回 false</para>
/// </summary>
/// <param name="source">字符串</param>
/// <returns>是否为邮箱</returns>
public static bool IsEmail(this string source)
{
return Regex.IsMatch(source, @"^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$", RegexOptions.IgnoreCase);
}
#endregion
#region <<IsDateTime()字符串是否为日期格式>>
/// <summary>
/// <para>代码说明:</para>
/// <para> 验证字符串是否为日期格式</para>
/// <para> 验证字符串为日期格式则返回 true 否则返回 false</para>
/// </summary>
/// <param name="source">字符串</param>
/// <returns>是否为日期格式</returns>
public static bool IsDateTime(this string source)
{
try
{
DateTime time = Convert.ToDateTime(source);
return true;
}
catch
{
return false;
}
}
#endregion
#region <<IsInt()字符串是否为Int类型>>
/// <summary>
/// <para>代码说明:</para>
/// <para> 验证字符串是否为Int类型</para>
/// <para> 验证字符串为Int类型则返回 true 否则返回 false</para>
/// </summary>
/// <param name="source">目标字符串</param>
/// <returns>验证结果</returns>
public static bool IsInt(this string source)
{
Regex regex = new Regex(@"^\d{1,10}$");
if (regex.Match(source).Success)
{
if ((long.Parse(source) > 0x7fffffffL) || (long.Parse(source) < -2147483648L))
{
return false;
}
return true;
}
return false;
}
#endregion
#endregion
#region 其他扩展方法
#region <<分割字符串>>
/// <summary>
/// <para>代码说明:</para>
/// <para> 通过字符串分割字符串</para>
/// <para> 通过字符串进行分割字符串,返回分割后的string[] 类型</para>
/// </summary>
/// <param name="source">原是字符串</param>
/// <param name="splitstr">分割字符串</param>
public static string[] Split(this string source, string splitstr)
{
string[] strArray = null;
if ((source != null) && (source != ""))
{
strArray = new Regex(splitstr).Split(source);
}
return strArray;
}
#endregion
#region <<删除字符串最后一个字符>>
/// <summary>
/// <para>代码说明:</para>
/// <para> 删除字符串的最后一个字符</para>
/// <para> 用于移除掉字符串的最后一个字符,如果该字符串的长度为0,则部会发生任何变化</para>
/// </summary>
/// <param name="source">待删除的字符</param>
/// <returns>删除后的字符</returns>
public static string RemoveLastStr(this string source)
{
return source.Length > ? source.Substring(, source.Length - ) : source;
}
#endregion
#endregion
后续更新ing...
String_Helper的更多相关文章
- CI(-)框架结构
一 CI 是什么 CodeIgniter is an Application Development Framework - a toolkit - for people who build web ...
- 我的第一个python web开发框架(13)——工具函数包说明(四)
string_helper.py是字符串操作包,主要对字符串进行检查.过滤和截取等处理. #!/usr/bin/evn python # coding=utf-8 import re def chec ...
- 我的第一个python web开发框架(15)——公司介绍编辑功能
完成登录以后,就会进入后台管理系统的主界面,因为这个是小项目,所以导航菜单全部固化在HTML中,不能修改.一般后台还会有一个欢迎页或关键数据展示的主页面,小项目也没有多大的必要,所以登录后直接进入公司 ...
- 我的第一个python web开发框架(17)——产品管理
这是后台管理系统最后一个功能,产品管理,它的接口与页面功能与上一章差不多. 获取产品列表接口 @get('/api/product/') def callback(): ""&qu ...
- 我的第一个python web开发框架(40)——后台日志与异常处理
后台权限和底层框架的改造终于完成了,小白也终于可以放下紧悬着的心,可以轻松一下了.这不他为了感谢老菜,又找老菜聊了起来. 小白:多谢老大的帮忙,系统终于改造完成了,可以好好放松一下了. 老菜:呵呵,对 ...
- 我的第一个python web开发框架(38)——管理员管理功能
后台管理员的管理功能,它主要用来管理后台的登录账号,绑定权限,当然如果想将后台管理扩展成企业相关管理系统,比如用于公司人事管理,在这个基础上进行适当扩展就可以了. 我们先看看界面效果(也可以看着数据字 ...
- 我的第一个python web开发框架(28)——定制ORM(四)
在数据库操作时,新增记录也是必不可少的,接下来我们应用字典的特性来组合sql语句 先上产品新增接口代码 @post('/api/product/') def callback(): "&qu ...
- 我的第一个python web开发框架(29)——定制ORM(五)
接下来我们要封装的是修改记录模块. 先上产品信息编辑接口代码 @put('/api/product/<id:int>/') def callback(id): ""&q ...
- 我的第一个python web开发框架(30)——定制ORM(六)
在开发中,查询操作是使用最多的,而查询列表是其中之一,查询列表可分为分页查询和不分页查询(它们之间多了一次总记录数查询),还可以分为单表查询和多表关联查询,返回的结构体根据前端使用的表单框架不同而有所 ...
随机推荐
- 使用navicat将mysql转换成sqlserver
使用navicat将mysql转换成sqlserver 1. 打开navicat,连接所需要装换的mysql数据库. 2. 选择所需要转换的数据源,点击右键选择数据传输.如图: 3. 打开数据传输面板 ...
- springMVC下载功能
前台页面 <a href="download">下载</a> 后台代码 /** * 文件下载 * @param request * @return * @t ...
- Kibana6.x.x源码结构分析笔记
- windows_study_1
描述:win8/windows server 设置用户登陆密码永不过期 解决: 第一步:打开控制面板,点击系统和安全第二部:管理工具第三步:本地安全组策略第四步:看图 第五步:把密码过期天数,改成0 ...
- 【算法笔记】B1028 人口普查
1028 人口普查 (20 分) 某城镇进行人口普查,得到了全体居民的生日.现请你写个程序,找出镇上最年长和最年轻的人. 这里确保每个输入的日期都是合法的,但不一定是合理的——假设已知镇上没有超过 2 ...
- 【Python】urlopen小结
0X00 简介 urlopen是urllib的的一个方法,它属于类文件对象,具有文件对象的方法,如read()等,同时也具有自身的一些方法: 1.info() 返回响应包的头信息 2.info() ...
- cmd笔记
批量获取一个文件夹内所有文件的文件名: dir *.png /b >list.txt tree /f >list.txt for /f "delims=" %%a in ...
- Python学习 day03
一.基本数据类型 python中的基本数据类型有以下几种: int -- 整数 python3中默认整数都是int型,python2中int的范围为-231~232-1(32位系统中)/ ...
- Linux-Xshell5
Linux-Xshell5 1.下载 2.安装 3.新建会话(连接) 点击新建 需要知道要连接的 IP, 查看命令 ifconfig 配置 名称可以自己命名,主机写要连接的 IP,其他的不能改 输 ...
- python-几种快速了解函数及模块功能的方式
背景 在进行编程的时候经常要导入各种包的各种函数,但是很多包一下又不知道为什么要导入这个模块,所以想总结下有哪些方法可以让我们快速熟悉其中函数的作用. import numpy as np impor ...