http://poj.grids.cn/practice/2744 描述现在有一些由英文字符组成的大小写敏感的字符串,你的任务是找到一个最长的字符串x,使得对于已经给出的字符串中的任意一个y,x或者是y的子串,或者x中的字符反序之后得到的新字符串是y的子串.输入输入的第一行是一个整数t (1 <= t <= 10),t表示测试数据的数目.对于每一组测试数据,第一行是一个整数n (1 <= n <= 100),表示已经给出n个字符串.接下来n行,每行给出一个长度在1和100之间的字符…
判断字符串为空和判断集合是否为空用到依赖,也可以改成自己的方式 <!-- Spring Web --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.2.12.RELEASE</version> </dependency> /** * 判断指定url…
alter table 表名 add constraint ck_char check(自段名 like '[a-z]' or 自段名 like '[A-Z]')…
bool b = listOfStrings.Any(s=>myString.Contains(s)); 应用在where子句中的示例: //获取路径 var groupPaths = groups.Select(x => x.GroupPath).ToList(); //获取所有子分组 var childrenGroups = allStoreGroups.Where(x => groupPaths.Any(t => x.GroupPath.Contains(t))).ToLis…
VIM 用正则表达式 批量替换文本,多行删除,复制,移动 在VIM中 用正则表达式 批量替换文本,多行删除,复制,移动 :n1,n2 m n3     移动n1-n2行(包括n1,n2)到n3行之下: :n1,n2 co n3    复制n1-n2行(包括n1,n2)到n3行之下: :n1,n2 d        删除n1-n2行(包括n1,n2)行: vi替换使用规则: :g/s1/s/s2/s3/g 第一个g表示对每一个包括s1的行都进行替换,第二个g表示对每一行包括s1的行所有的s2都用s…
看一个正则 这里明显,起到匹配作用的是 | 后的,可 | 后什么都没有,原理不知道,也没有搜到文献,只有在 Reg101 上是这样解释的, 所以得出结论: js 中,空正则匹配任意一个位置. 不过,这个情况时常会造成一些 bug ,比如: 即使你传一个空字符串,他也是匹配到的 ,因为他匹配一个位置,空字符串最少匹配了一个位置,所以这个正则在绝大多数情况下,都返回 true, 不过,通常你不能声明一个空正则,譬如: 除非用构造函数: 这里可能隐藏了匹配任意一个位置的原理:…
给一个非常长的字符串str 另一个字符集比方{a,b,c} 找出str 里包括{a,b,c}的最短子串.要求O(n). 比方,字符集是a,b,c,字符串是abdcaabcx,则最短子串为abc. 设置Front和Rear,使用对象记录字符集已有值的个数和位置,通过Front和Rear遍历字符串. 遍历过程为Rear在前,当遇到字符集中字符时,该字符个数加1,记录该字符位置. 出现字符集都出现时,计算字串长度:然后,front前移一位,假设此位在字符集中,清空对象记录字符集的状态. 最后获得字串的…
namespace test4 {/* 4.写一个控制台应用程序,接收一个长度大于3的字符串,完成下列功能: 1)输出字符串的长度. 2)输出字符串中第一个出现字母a的位置. 3)在字符串的第3个字符后面插入子串"hello",输出新字符串. 4)将字符串"hello"替换为"me",输出新字符串. 5)以字符"m"为分隔符,将字符串分离,并输出分离后的字符串. */ class Program { static void M…
namespace test2 { class Program { /// <summary> /// 编写一个类,其中包含一个排序的方法Sort(),当传入的是一串整数,就按照从小到大的顺序输出,如果传入的是一个字符串,就将字符串反序输出. /// </summary> /// <param name="args"></param> static void Main(string[] args) { , , , , };//注意定义格式…