精华内容
下载资源
问答
  •  截取长度为g1的t11的左半部分a1 以及剩下的数据b1  判断a1是否等于t21  若等于 a1、b1分别存起来,循环结束  若不等于 循环+1 拿到表二第二个数、第三个数等,直到等于 拿到表一第二个数 拿到表一第...

               

    如上图所示,有两个表,前者存的是区号电话号连起来的电话号,后者存的是世界各地的区号,怎么把第一个表里分成两列,一列单独存区号,一列单独存电话号。

    ps:电话号码长度和区号长度都不是固定的

     

    先将表二数据分列,分隔符号 + 将地区、区号分成两列存起来

    外侧循环:拿到表一第一个数t11

      内侧循环:拿到表二第一个数t21

           拿到表二第一个数长度g1

           截取长度为g1的t11的左半部分a1 以及剩下的数据b1

           判断a1是否等于t21

             若等于 a1、b1分别存起来,循环结束

             若不等于 循环+1 拿到表二第二个数、第三个数等,直到等于

    拿到表一第二个数

    拿到表一第三个数

    直到没有没有数据了,循环结束

     

    转载于:https://www.cnblogs.com/xiyouzhi/p/9990730.html

    展开全文
  • <p>I am using golang regexp and I want to extract a pattern in a string. <p>For example, I can have the following name value pairs in the string: <p>"name1=val1;name2=val2;needle=haystack;...
  • 让grep高亮显示匹配部分字符

    千次阅读 2013-09-03 16:59:50
    always和auto的区别就是,always会在任何情况下都给匹配字段加上颜色标记,当通过管道或重定向时就会多出一些控制字符,结果会变成 export ^[[1;32m^[[KGREP^[[m^[[K_OPTIONS='-color=always' export ^[[1;32m^...
    方法1:

    编辑  vim  ~/.bashrc

     添加  alias grep = 'grep --color=auto'

    source ~/.bashrc 


    方法2

    vim  ~/.bashrc 

    export GREP_OPTIONS='--color=auto' GREP_COLOR='10;32'


     

    这里用到grep的一个参数-color,color有三个值供选择:never、always、auto

    always和auto的区别就是,always会在任何情况下都给匹配字段加上颜色标记,当通过管道或重定向时就会多出一些控制字符,结果会变成
    export ^[[1;32m^[[KGREP^[[m^[[K_OPTIONS='-color=always'
    export ^[[1;32m^[[KGREP^[[m^[[K_COLOR='1;32′

     

    而auto则只在输出到终端时才加上颜色。
    可以在.bashrc里加上
    export GREP_OPTIONS='-color=auto'
    来实现高亮匹配,具体用什么颜色,可以通过
    export GREP_COLOR='a;b' #默认是1;31,即高亮的红色
    来设置,其中:
    a可以选择:【0,1,4,5,7,8】

    0 关闭所有属性
    1 设置高亮度
    4 下划线
    5 闪烁
    7 反显
    8 消隐

    b可以选择:【30-37或40-47】

    30 black
    31 red
    32 green
    33 yellow
    34 blue
    35 purple
    36 cyan
    37 white
    30 — 37 设置前景色
    40 — 47 设置背景色

     

    转自:http://blog.sina.com.cn/s/blog_8c6d7ff6010188uy.html

    展开全文
  • 正则表达式或“regex”用于匹配字符串的各个部分,下面是我创建正则表达式的备忘录。包括一些常用的验证、匹配数字、匹配字符串、匹配中文、匹配任意字符串。 匹配正则 使用 .test() 方法 let testString = ...

    本文转自:91博客 ;原文地址:http://www.9191boke.com/235792704.html

    正则表达式或“regex”用于匹配字符串的各个部分,下面是我创建正则表达式的备忘录。包括一些常用的验证、匹配数字、匹配字符串、匹配中文、匹配任意字符串。 

    js正则表达式验证、匹配数字、匹配字符串、匹配中文、匹配任意字符备忘录 | 91博客

     

    匹配正则

    使用 .test() 方法

    let testString = "My test string";  
    let testRegex = /string/;  
    testRegex.test(testString);

    匹配多个模式

    使用操作符号 |

    const regex = /yes|no|maybe/;

    忽略大小写

    使用i标志表示忽略大小写

    const caseInsensitiveRegex = /ignore case/i;  
    const testString = 'We use the i flag to iGnOrE CasE';  
    caseInsensitiveRegex.test(testString); // true 

    提取变量的第一个匹配项

    使用 .match() 方法

    const match = "Hello World!".match(/hello/i); // "Hello" 

    提取数组中的所有匹配项

    使用 g 标志

    const testString = "Repeat repeat rePeAT";  
    const regexWithAllMatches = /Repeat/gi;  
    testString.match(regexWithAllMatches); // ["Repeat", "repeat", "rePeAT"]   

    匹配任意字符

    使用通配符. 作为任何字符的占位符

    // To match "cat", "BAT", "fAT", "mat"  
    const regexWithWildcard = /.at/gi;  
    const testString = "cat BAT cupcake fAT mat dog";  
    const allMatchingWords = testString.match(regexWithWildcard); // ["cat", "BAT", "fAT", "mat"] 

    用多种可能性匹配单个字符

    使用字符类,你可以使用它来定义要匹配的一组字符    把它们放在方括号里 [] 

    //匹配 "cat" "fat" and "mat" 但不匹配 "bat"  
    const regexWithCharClass = /[cfm]at/g;  
    const testString = "cat fat bat mat";  
    const allMatchingWords = testString.match(regexWithCharClass); // ["cat", "fat", "mat"]   

    匹配字母表中的字母

    使用字符集内的范围 [a-z]

    const regexWidthCharRange = /[a-e]at/;  
    const regexWithCharRange = /[a-e]at/;  
    const catString = "cat";  
    const batString = "bat";  
    const fatString = "fat";  
    regexWithCharRange.test(catString); // true  
    regexWithCharRange.test(batString); // true  
    regexWithCharRange.test(fatString); // false 

    匹配特定的数字和字母

    你还可以使用连字符来匹配数字

    const regexWithLetterAndNumberRange = /[a-z0-9]/ig;  
    const testString = "Emma19382";  
    testString.match(regexWithLetterAndNumberRange) // true 

    匹配单个未知字符

    要匹配您不想拥有的一组字符,使用否定字符集 ^

    const allCharsNotVowels = /[^aeiou]/gi;  
    const allCharsNotVowelsOrNumbers = /[^aeiou0-9]/gi;

    匹配一行中出现一次或多次的字符

    使用 + 标志    

    const oneOrMoreAsRegex = /a+/gi;  
    const oneOrMoreSsRegex = /s+/gi;  
    const cityInFlorida = "Tallahassee";  
    cityInFlorida.match(oneOrMoreAsRegex); // ['a', 'a', 'a'];  
    cityInFlorida.match(oneOrMoreSsRegex); // ['ss'];    

    匹配连续出现零次或多次的字符

    使用星号 *

    const zeroOrMoreOsRegex = /hi*/gi;  
    const normalHi = "hi";  
    const happyHi = "hiiiiii";  
    const twoHis = "hiihii";  
    const bye = "bye";  
    normalHi.match(zeroOrMoreOsRegex); // ["hi"]  
    happyHi.match(zeroOrMoreOsRegex); // ["hiiiiii"]  
    twoHis.match(zeroOrMoreOsRegex); // ["hii", "hii"]  
    bye.match(zeroOrMoreOsRegex); // null 

    惰性匹配  

    字符串中与给定要求匹配的最小部分    

    默认情况下,正则表达式是贪婪的(匹配满足给定要求的字符串的最长部分)   

    使用 ? 阻止贪婪模式(惰性匹配 ) 

     const testString = "catastrophe";  
     const greedyRexex = /c[a-z]*t/gi;  
     const lazyRegex = /c[a-z]*?t/gi;  
     testString.match(greedyRexex); // ["catast"]  
     testString.match(lazyRegex); // ["cat"]  

    匹配起始字符串模式

    要测试字符串开头的字符匹配,请使用插入符号^,但要放大开头,不要放到字符集中

    const emmaAtFrontOfString = "Emma likes cats a lot.";  
    const emmaNotAtFrontOfString = "The cats Emma likes are fluffy.";  
    const startingStringRegex = /^Emma/;  
    startingStringRegex.test(emmaAtFrontOfString); // true  
    startingStringRegex.test(emmaNotAtFrontOfString); // false    

    匹配结束字符串模式

    使用 $ 来判断字符串是否是以规定的字符结尾

    const emmaAtBackOfString = "The cats do not like Emma";  
    const emmaNotAtBackOfString = "Emma loves the cats";  
    const startingStringRegex = /Emma$/;  
    startingStringRegex.test(emmaAtBackOfString); // true  
    startingStringRegex.test(emmaNotAtBackOfString); // false    

    匹配所有字母和数字

    使用\word 简写

    const longHand = /[A-Za-z0-9_]+/;  
    const shortHand = /\w+/;  
    const numbers = "42";  
    const myFavoriteColor = "magenta";  
    longHand.test(numbers); // true  
    shortHand.test(numbers); // true  
    longHand.test(myFavoriteColor); // true  
    shortHand.test(myFavoriteColor); // true

    除了字母和数字,其他的都要匹配

    用\W 表示 \w 的反义

    const noAlphaNumericCharRegex = /\W/gi;  
    const weirdCharacters = "!_$!!";  
    const alphaNumericCharacters = "ab283AD";  
    noAlphaNumericCharRegex.test(weirdCharacters); // true  
    noAlphaNumericCharRegex.test(alphaNumericCharacters); // false 

    匹配所有数字

    你可以使用字符集[0-9],或者使用简写 \d

    const digitsRegex = /\d/g;  
    const stringWithDigits = "My cat eats $20.00 worth of food a week.";  
    stringWithDigits.match(digitsRegex); // ["2", "0", "0", "0"]

    匹配所有非数字

    用\D 表示 \d 的反义

    const nonDigitsRegex = /\D/g;  
    const stringWithLetters = "101 degrees";  
    stringWithLetters.match(nonDigitsRegex); // [" ", "d", "e", "g", "r", "e", "e", "s"] 

    匹配空格

    使用 \s 来匹配空格和回车符

    const sentenceWithWhitespace = "I like cats!"  
    var spaceRegex = /\s/g;  
    whiteSpace.match(sentenceWithWhitespace); // [" ", " "] 

    匹配非空格

    用\S 表示 \s 的反义

    const sentenceWithWhitespace = "C a t"  
    const nonWhiteSpaceRegex = /\S/g;  
    sentenceWithWhitespace.match(nonWhiteSpaceRegex); // ["C", "a", "t"] 

    匹配的字符数

    你可以使用 {下界,上界} 指定一行中的特定字符数

    const regularHi = "hi";  
    const mediocreHi = "hiii";  
    const superExcitedHey = "heeeeyyyyy!!!";  
    const excitedRegex = /hi{1,4}/;  
    excitedRegex.test(regularHi); // true  
    excitedRegex.test(mediocreHi); // true  
    excitedRegex.test(superExcitedHey); //false 

    匹配最低个数的字符数

    使用{下界, }定义最少数量的字符要求,下面示例表示字母 i 至少要出现2次

    const regularHi = "hi";  
    const mediocreHi = "hiii";  
    const superExcitedHey = "heeeeyyyyy!!!";  
    const excitedRegex = /hi{2,}/;  
    excitedRegex.test(regularHi); // false  
    excitedRegex.test(mediocreHi); // true  
    excitedRegex.test(superExcitedHey); //false 

    匹配精确的字符数

    使用{requiredCount}指定字符要求的确切数量 

    const regularHi = "hi";  
    const bestHi = "hii";  
    const mediocreHi = "hiii";  
    const excitedRegex = /hi{2}/;  
    excitedRegex.test(regularHi); // false  
    excitedRegex.test(bestHi); // true  
    excitedRegex.test(mediocreHi); //false

    匹配0次或1次

    使用 ? 匹配字符 0 次或1次

    const britishSpelling = "colour";  
    const americanSpelling = "Color";  
    const languageRegex = /colou?r/i;  
    languageRegex.test(britishSpelling); // true  
    languageRegex.test(americanSpelling); // true

    转载于:https://www.cnblogs.com/007sx/p/10987191.html

    展开全文
  • 由于是新手,所以对很多API都不太清楚,今天老大让我从一个字符串中获取符合条件的,并且取出来。 下面是我第一次写的代码 public class ParseNumber { public static void main(String[] args) { new ...

    由于是新手,所以对很多API都不太清楚,今天老大让我从一个字符串中获取符合条件的,并且取出来。

    下面是我第一次写的代码

    public class ParseNumber {
    	public static void main(String[] args) {		
    		new ParseNumber().go();
    	}
    	private void go(){
    		String input = "失去联系【05922629809】【啦啦啦】【059-22629809】【啦啦啦】【05922629809】";
    		System.out.println(parseStr(input));
    	}
    	/**把要解析的字符串传进去并进行解析*/
        private String parseStr(String disStr) {
        	String phoneStr = " ";
        	if(disStr == null || "null".equals(disStr) || "NULL".equals(disStr)){
        		return phoneStr;
        	}
        	if(disStr.contains("【") && disStr.contains("】")){
        		List<String> resultList = new ArrayList<String>();
        		resultList = parseAllStr(disStr, 0, 0,resultList);
        		phoneStr = getNum(resultList);
        	}
    		return phoneStr;
    	}
        /**便利解析结果集,并且把第一个符合电话号码的串取出来*/
        private String getNum(List<String> resultList) {
        	for (int i = 0; i < resultList.size(); i++) {
    			String regex = "\\d+";
    			String currStr = resultList.get(i);
    			if (currStr.matches(regex)) {
    				return currStr;
    			}
    		}
    		return " ";
    	}
        /**用递归的方法编类所有被【】包围的串*/
    	private List<String> parseAllStr(String disStr,int beginIndex,int endIndex,List<String> resultList){
        	beginIndex = disStr.indexOf("【", beginIndex);
    		endIndex = disStr.indexOf("】",endIndex);
    		if(beginIndex>=0&&endIndex>=0){
    			resultList.add(disStr.substring(beginIndex+1, endIndex));
    			parseAllStr(disStr, beginIndex+1, endIndex+1,resultList);
    		}
        	return resultList;
        }
    }
    

    很麻烦,当时是满足要求了,然后老大看了一下说可能太麻烦了,后来我就去查了一查资料,并且发现有下面这样的API,这是我第二次写的代码

    public class ParseNumber1 {
    	public static void main(String[] args) {
    		String s1 ="失去联系【05922629809】【啦啦啦】【059-22629809】【啦啦啦】【05922629809】";
    		Pattern pattern=Pattern.compile("【\\d+】|【\\d+-\\d+】");
    		Matcher matcher = pattern.matcher(s1);
    		if (matcher.find()){
    		    //你的代码
    			int beginIndex = matcher.start();
    			int endInDex = matcher.end();
    		    System.out.println(beginIndex);
    		    System.out.println(endInDex);
    		    System.out.println(s1.substring(beginIndex+1, endInDex-1));
    		}
    	}
    }

    我草草草,这么简单?就搞定了,所以在这里做一个笔记,原谅我是小白。。。。。。。。
    展开全文
  • python 匹配隐藏字符

    2018-06-12 21:22:00
    问题:从文件读取内容,...1: 确认空白部分是什么字符 利用 notepad++,确认字符为LF 2. 确认字符匹配 搜索正则匹配,尝试\r\n,未匹配上;\n 实现 https://blog.csdn.net/duanlianvip/article/details/...
  • 部分字符串必须与html文本匹配。如果文本使用xpath匹配(部分匹配),则应返回特定的html标记路径。注意:我需要为多个站点自动执行此逻辑。我应该使用通用规则(用于定位“Price”,获取父标记)这是一个例子:...
  • 正则匹配常见字符

    2020-05-05 22:28:00
    字母开头的n位包含只包含数字...匹配Unicode词语的字符,包含了可以构成词语的绝大部分字符,也包括数字和下划线。 如果设置了 ASCII 标志,就只匹配 [a-zA-Z0-9_] 。 对于8位(bytes)样式: 匹配ASCII字符中的 [a...
  • \S 表示匹配非空白字符,范围可广了,只要不是空格、换行符、制表符、换页符即可你举的例子看不出区别,但你试试 my $names = "Fred and Bar-ney"; 就看出来了\w 不包括 :;"'+-*/@# 这些... 只有 [a-zA-Z0-9_]\S 非...
  • 比如用 stringbb 这个字符串进行[color=#FF0000]首端匹配[/color]查询时,要把数据库中的这些字符记录都提出来: string stringb stringbb stringbbccdd stringbbccddeeff 比如用 bbstring这个字符串进行...
  • 根据条件,做单个的字符匹配字符匹配的规则由两部分组成,一个是匹配字符形式,比如大小写字母、数字等字符,另一部分则是字符重复的次数。 在正则匹配中的元字符有: . ^ $ * +? { [ ] \ | ( )。这些元字符...
  • 代码包含两部分:python当前目录匹配包含指定字符串的文件+指定文件中匹配指定字符串 ######## 用于搜索方法 ###### ######## 当前目录搜索 _client结尾的文件(taurus目前所有方法都写在client结尾的文件###包含 ...
  • 字符识别是车牌识别中很重要的一部分,在模式识别中也扮演的很重要的角色。当然,我们可以用很多方法拉进行字符识别,比如:基于向量机(SVM),神经网络,小波等方法。当然基于模板匹配也是一种方法。模板匹配既...
  • 匹配字符

    2016-05-08 18:18:23
    那个组的某部分匹配的任何一个字符。当需要查找两个字符中的任何一个都适合的串时, 使用字符类方括号最为方便。如模式“/c[oa]t”可以匹配cat,也可以匹配cot。 字符类中的元字符集与正规表达式中的普通列表稍...
  • 搜索时可以用notepad++ 搜索测试,匹配部分会变为选中状态 1 匹配image标签 <img([\s\S]*?)> 说明: (1)([\s\S]*?) 代表任意字符 ? 指不贪心匹配 不加 ? 则指贪心匹配 (2) java中使用要用双斜杠\\,下面...
  • 字符匹配

    2016-11-01 00:24:00
    大多数字母和字符一般都会和...有些字符比较特殊,它们和自身并不匹配,而是会表明应和一些特殊的东西匹配,或者它们会影响到 RE 其它部分的重复次数。本文很大篇幅专门讨论了各种元字符及其作用。 这里有一个元...
  • 比较字符串和字符串的部分String类有许多用于比较字符串和字符部分的方法,下表列出了这些方法。方法描述boolean endsWith(String suffix)boolean startsWith(String prefix)如果此字符串以指定为方法的参数的子...
  • 08_Pandas提取含有指定字符串的行(完全匹配部分匹配) 以下内容,如何使用pandas提取含有指定字符串的行的方法进行解释说明。 行的提取(选择)方法 完全匹配 == 部分匹配 str.contains():包含一个特定的...
  • 在前台处理字符串时,有时并不需要动态拼接字符串,某一部分字符串可能是固定的,因此在开发过程中我们可以利用正则表达式将html元素匹配出来。如下: var html = (function(){/* <div> <div> ...
  • 在正则表达式中,greedy贪婪匹配找到符合正则表达式模式的字符串的最长可能部分,并将其作为匹配返回。 替代方案称为lazy懒惰匹配,它找到符合正则表达式模式的字符串的最小可能部分。 你可以将正则表达式/t[a-z...
  • 闲来无事,看到别人说的面试题让取到里两个字符串最长匹配字符串,于是就想试试,自己捣鼓了一下,方法挺笨的,就是for循环遍历,没有想到其他简便的思路,但是效果还是能实现的。 题目 再详细说一下题目:取到里...
  • 还处理隐藏文件和函数名称的部分字符匹配的 which 命令。 操作就像 which 但返回所有出现。 即哪个函数 -all 用于查找部分字符匹配的可选第二个参数。 检查路径结构中的所有函数,并返回在函数名中观察到指定...
  • 字符匹配

    2020-06-10 11:11:05
    所谓匹配,是要涵盖整个字符串s的,而不是部分字符串。 s可能为空,且只包含a-z的小写字母 p可能为空,且只包含a-z的小写字母,以及字符 ‘.’ 和 '’ ‘.’ 匹配任意单个字符 '’ 匹配0-N个前面那个字符 示例: aa ...
  • 字符识别算法能够直接影响字符识别的精度和速度....从理论分析和实验结果这两方面来看,所提字符识别算法能够充分区分开字符笔画和非笔画部分字符识别的影响大小,可以有效提升识别率和鲁棒性,性能较优.
  • 10 正则表达式匹配 ...匹配应该覆盖整个字符串 (s) ,而不是部分字符串。 说明: s 可能为空,且只包含从 a-z 的小写字母。 p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *。 示例 1: 输入:...
  • 匹配中文字符的正则表达式: [u4e00-u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^x00-xff]...|评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的
  • 1.根据字符串内容前后匹配查询中间内容 @Test public void test(){ String sss ="19/11/28 15:04:36 INFO Client: Application report for application_1574829583306_0018 has started r...
  • 获取字符串中特定部分:(提取) 过滤敏感词:(替换)为** 或者 空 特征:灵活性,逻辑性,功能性强,简单字符串达到复杂的控制 1,创建: RegExp: var regexp = new RegExp(/123/); 麻烦 字面量:var rg = ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,034
精华内容 3,213
关键字:

匹配部分字符