Csharp: Searching Within a String
1 /// <summary> 2 /// 20130118 3 /// 搜索字符串是否存在 4 /// 塗聚文 締友計算機信息技術有限公司 5 /// 捷為工作室 6 /// </summary> 7 public class StringSearchClass 8 { 9 /// <summary> 10 /// 查找字符串 11 /// StringIndexOf("1,2,3,4,5,6", "1,8"); 12 /// </summary> 13 /// <param name="str1">字符串</param> 14 /// <param name="judgestr">查找的字符或串</param> 15 /// <returns>返回是否存在</returns> 16 public static bool StringIndexOf(string str1, string searchstr) 17 { 18 bool isExist = true; 19 str1 = "," + str1 + ","; 20 string[] strs = searchstr.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); 21 foreach (string strtemp in strs) 22 { 23 if (str1.IndexOf(',' + strtemp + ',') == -1) 24 { 25 isExist = false; 26 break; 27 } 28 } 29 return isExist; 30 } 31 /// <summary> 32 /// 查找字符串 33 /// 塗聚文 34 /// </summary> 35 /// <param name="str1">字符串</param> 36 /// <param name="judgestr">查找的字符或字符串</param> 37 /// <returns></returns> 38 public static bool StringContains(string str1, string searchstr) 39 { 40 bool isExist = true; 41 str1 = "," + str1 + ","; 42 string[] strs = searchstr.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); 43 foreach (string strtemp in strs) 44 { 45 if (!str1.Contains(',' + strtemp + ',')) 46 { 47 isExist = false; 48 break; 49 } 50 } 51 return isExist; 52 } 53 /// <summary> 54 /// 查找字符串 55 /// 塗聚文 56 /// </summary> 57 /// <param name="str1">字符串</param> 58 /// <param name="judgestr">查找的字符或字符串</param> 59 /// <returns></returns> 60 public static bool StringRegex(string str1, string searchstr) 61 { 62 bool isExist = true; 63 str1 = "," + str1 + ","; 64 string[] strs = searchstr.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); 65 foreach (string strtemp in strs) 66 { 67 if (!Regex.Match(str1, strtemp, RegexOptions.IgnoreCase).Success) 68 { 69 isExist = false; 70 } 71 } 72 return isExist; 73 } 74 }
測試:
1 //測試 2 Stopwatch sw = new Stopwatch(); 3 4 sw.Start(); 5 // bool s = StringIndexOf("1,2,3,4,5,6", "1,6");//True,所耗時間:00:00:00.0003557 6 // bool s = StringContains("1,2,3,4,5,6", "1,6");//True,所耗時間:00:00:00.0003625 7 bool s = StringRegex("1,2,3,4,5,6", "1,6");//False,所耗時間:00:00:00.0286617 //True,所耗時間:00:00:00.0008295 //True,所耗時間:00:00:00.0008237 8 sw.Stop(); 9 this.textBox1.Text=s.ToString()+",所耗時間:"+sw.Elapsed.ToString();
转载于:https://www.cnblogs.com/geovindu/archive/2013/01/18/2866069.html
Csharp: Searching Within a String相关推荐
- python跟csharp_unity-工具-csharp与python交互
title: unity-工具-csharp与python交互 categories: Unity3d tags: [unity, 编辑器, 扩展, python] date: 2020-03-23 ...
- asp.net实现C#代码加亮显示
以下是代码片段: StringWriter textBuffer = new StringWriter(); Match match= Regex.Match(HTMLStr,@"/&quo ...
- 核心(Core) Javascript 学习手记
说明: 一字一句都是俺敲出来的, ^^. 转载请注明出处哦. 前些日子, 发现好些地方需要用到 Js 代码, 以前没怎么系统的学习过, 要用到的时候查一堆一堆的手册, 写得不好不说, 还很浪费时间, ...
- Unity 引擎UGUI之自定义树形菜单(TreeView)
先上几张效果图: 如果你需要的也是这种效果,那你就来对地方了! 目前,我们这个树形菜单展现出来的功能如下: 1.可以动态配置数据源: 2.点击每个元素的上下文菜单按钮(也就是图中的三 ...
- windows下定期清理超过一定时间的文件
windows下定期清理超过一定时间的文件 背景 linux下当我们想定期清理超过7天无修改的日志或备份文件,可以通过以下命令来完成: find $path -type f -mtime|-ctime ...
- 向Lucene增加中文分词功能
一.分词功能介绍 分词模块对于搜索的重要性不言而喻.例如,没有分词时,搜索"和服"会出现"产品和服务",搜索"海尔"会出现"海尔德 ...
- 函数中{}输出格式详解(C#)
Console.WriteLine()函数中{}输出格式详解(C#) Console.WriteLine()函数的格式一直没怎么注意.今天同事问起Console.WriteLine({0:D3},a) ...
- 精进不休 .NET 4.0 (4) - C# 4.0 新特性之命名参数和可选参数
[索引页] [源码下载] 精进不休 .NET 4.0 (4) - C# 4.0 新特性之命名参数和可选参数, 动态绑定(dynamic), 泛型协变和逆变, CountdownEvent, Barri ...
- 浅谈三层架构中的实体类(C#)
最近因为三层架构中的实体类,引发了不少小问题,下面列举一下,谈谈自己的感想. 本文所指的实体类仅限于三层中的实体类,即数据库表的映射. 一.为什么要用实体类? | 使程序简洁易懂,便于维护. | ...
- Discuz!NT 模板机制分析(转)
作为产品中的一大特色,模板机制一经推出,就引来了大家特别是站长们的关注.但它所饱受的风风 雨雨也成了那时不少人关注的话题.而今天本人将结合在产品组中的开发经历,介绍一下模板机制在设计 使用时的一些体会 ...
最新文章
- 研究生:我们的任务是把导师培养成院士
- 流媒体服务器之rtp协议,rtcp协议,rtsp协议,sdp协议,sip协议简析
- ASP.NET MVC 3 RC发布
- android自定义模态框,安卓开发自定义弹出框的简单方式(纯代码布局)
- 人生苦短,我学python之python+selenium select下拉框
- java hprof_java 性能之 hprof
- java 提高性能的 容器库_容器隔离性带来的问题--容器化Java应用比虚机启动速度慢...
- Linux下C++开发系列(一)序——我是如何开始linux下C++开发的
- eclipse for php开发环境,eclipse for php 开发环境配置
- axure元件库 文件上传_一库:便捷的前后台元件库
- 在我一生中最猥琐的时候遇见你(1)
- SQL注入双引号报错注入
- wps表格l制作甘特图_十分钟学会制作Excel甘特图,工作进度一目了然!
- Bootstrap学习笔记02
- 【软考软件评测师】第五章节 安全测试测试方法
- Python OpenSSL基本操作接口
- QLU—新生训练赛002补题
- 计算机能使用硬盘吗,电脑内置硬盘可以直接当移动硬盘用吗?
- 麒麟系统安装CANN开发环境
- SQL注入漏洞攻守之道
热门文章
- 编译OpenJDK8-u302出错:error C3861: “INT64_C”: 找不到标识符
- JAVA转为wasm
- JAVA版的IntHashMap的多个源码
- 在使用体验上,VS远远不如Eclipse
- LINUX脚本中如何判断相等
- 热烈庆贺博客等级V7
- python研究背景与意义_立体匹配的研究背景以及意义
- VS C++ vector结构体 增加元素 删除元素 获取第一个元素 最后一个元素 清空元素
- java定时器 不延时_ScheduledExecutorService 将一个定时任务延迟
- 实施工程师是干嘛的_CTO大怒:300万建设数据中台,啥也没看见,我要它干嘛?...