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(六)
在开发中,查询操作是使用最多的,而查询列表是其中之一,查询列表可分为分页查询和不分页查询(它们之间多了一次总记录数查询),还可以分为单表查询和多表关联查询,返回的结构体根据前端使用的表单框架不同而有所 ...
随机推荐
- spring boot 自定义静态资源 位置..
upload-path: E:/upload # 上传文件夹. upload-key: 72b3158c-a0f3-11e8-98d0-529269fb1459 # 定义上传的 key . sprin ...
- 1017 A除以B (20 分)
#include <iostream> #include <string> using namespace std; int main() { string num; int ...
- Django - Xadmin 组件(一)
Django - Xadmin 组件(一) Web 应用中离不开的就是后台管理, Django 自带的 admin 组件提供了一部分内容,但往往现实项目中会有更多的需求,所以自定义自己的后台管理就十分 ...
- c# 委托访问listbox多线程操作
c# 委托访问listbox多线程操作 using System;using System.Collections.Generic;using System.ComponentModel;using ...
- 线性递推规律BM杜教
#include <cstdio> #include <cstring> #include <cmath> #include <algorithm> # ...
- dataTable 加了竖向滚动条导致列头样式错位的问题 / 亲测可用,不好用你打我,用好了记得点推荐
tab在没有显示之前,容器是没有高度宽度的,而dt在自动计算高度和宽度时是获取的外部容器的高度和宽度,当切换tab时,dt获取不到这个高度宽度,导致列头都挤在一起,是用下面代码解决此问题 $('a[d ...
- Codeforces - 71E 状压DP
参考官方题解 #include<bits/stdc++.h> #define rep(i,j,k) for(register int i=j;i<=k;i++) #define rr ...
- SpringMVC 商城项目
1. 商城视频中有word 笔记文档
- mutillidae之Insert型注入
A1:Insert型注入 1.输入内容,确定内容输出位置,确定插入字段顺序 输入test')-- -,页面报错,可知test并非最后一个字段,继续尝试test','123'),页面返回正常,确定tes ...
- PIE SDK介绍
1. 产品概述 PIE-SDK是航天宏图自主研发的PIE二次开发组件包,集成了专业的遥感影像处理.辅助解译.信息提取.专题图表生成.二三维可视化等功能.底层采用微内核式架构,由跨平台的标准C++编写, ...