精华内容
下载资源
问答
  • sed替换正则表达式

    千次阅读 2020-12-02 13:43:13
    格式:sed's/要替换的字符串/新的字符串/g' (要替换的字符串可以用正则表达式) sed -i命令详解https://www.cnblogs.com/ev-zhk/p/4277023.html sed及正则表达式...

    格式:sed 's/要替换的字符串/新的字符串/g'   (要替换的字符串可以用正则表达式)

    sed -i命令详解https://www.cnblogs.com/ev-zhk/p/4277023.html

    sed及正则表达式https://blog.csdn.net/qq_42334372/article/details/83037362

    [root@www ~]# sed [-nefr] [动作]
    选项与参数:
    -n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
    -e :直接在命令列模式上进行 sed 的动作编辑;
    -f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作;
    -r :sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法)
    -i :直接修改读取的文件内容,而不是输出到终端。
    
    动作说明: [n1[,n2]]function
    n1, n2 :不见得会存在,一般代表『选择进行动作的行数』,举例来说,如果我的动作是需要在 10 到 20 行之间进行的,则『 10,20[动作
    展开全文
  • /*** 此方法描述的是:字符串的替换* @param string需要替换的字符串* @param oldString被替换的字符串* @param newString新字符串* @author 作者 E-mail: wangxiongdx@163.com* @version 创建时间:2009-9-13 下午...

    /**

    * 此方法描述的是:字符串的替换

    * @param string需要替换的字符串

    * @param oldString被替换的字符串

    * @param newString新字符串

    * @author 作者 E-mail: wangxiongdx@163.com

    * @version 创建时间:2009-9-13 下午01:34:23

    */

    public static String replace(String string, String oldString, String newString) {

    if (string == null) {

    return null;

    }

    int i = 0;//初始位置,从0开始

    //从指定位置开始查找oldString在string中的起始位置

    if ((i = string.indexOf(oldString, i)) >= 0) {

    // Use char []'s, as they are more efficient to deal with.

    char[] string2 = string.toCharArray();

    char[] newString2 = newString.toCharArray();

    int oLength = oldString.length();

    //StringBuilder 简易替换 比 StringBuffer 要快

    StringBuilder buf = new StringBuilder(string2.length);

    //string2从起始位置到 i 的部分... 继续追加新串 newString2

    buf.append(string2, 0, i).append(newString2);

    //string中旧字符串的结束位置

    i += oLength;

    int j = i;

    // Replace all remaining instances of oldString with newString.

    //用新串替换所有出现的旧串

    while ((i = string.indexOf(oldString, i)) > 0) {

    buf.append(string2, j, i - j).append(newString2);

    i += oLength;

    j = i;

    }

    //用新串替换后的string2中截获最后一次出现新串的结束位置到结尾

    buf.append(string2, j, string2.length - j);

    return buf.toString();

    }

    return string;

    }

    /**

    * 此方法描述的是:使用正则替换字符串
    tt中含有的html标签和js标签

    * @param string传入字符串

    * @author 作者 E-mail: wangxiongdx@163.com

    * @version 创建时间:2009-9-29 下午03:34:23

    */

    public static String stripHTMLTags(String tt){

    //匹配所有带字母的标签(包括js标签)

    String tag = "?[a-zA-Z]*([\\s]*([A-Za-z]+[\\s]?=[\\s]?(\"|')?[\\w]+(\"|')?))*>";

    //匹配js标签

    String javascriptTag = "

    Pattern p = Pattern.compile(tag);

    //起始

    int index = 0;

    //结束

    int last;

    while((index = tt.indexOf("<",index)) != -1){

    if((last = tt.indexOf(">",index)) != -1){

    //目标字符串

    String oldString = tt.substring(index, last+1);

    Matcher m = p.matcher(oldString);

    //首先判断是否为js标签

    if(Pattern.compile(javascriptTag).matcher(oldString).matches()){

    if((last = tt.indexOf("",last)) != -1){

    tt = replace(tt, tt.substring(index, last+9), "");

    }

    //再判断是否为html标签(html正则考虑去除js标签正则???后补)

    }else if(m.matches()){

    tt = replace(tt, oldString, "");

    }

    }else{

    break;

    }

    }

    return tt;

    }

    展开全文
  • IDEA中的全局批量替换正则表达式

    千次阅读 2020-12-30 20:59:22
    1. 常用搜索快捷键 CTRL+F:当前文件全文搜索 ...CTRL+SHIFT+R:当前项目按内容查询并替换(全局查找替换) 2. 正则表达式 简单实用的 在IEDA中,可以用 A. 来匹配以A开头的内容, 用 B 其他正则表达式 ...

    常用搜索快捷键

    CTRL+F:当前文件全文搜索
    CTRL+R:当前文件全文替换
    CTRL+SHIFT+F:当前项目按内容查询(全局查找)
    CTRL+SHIFT+R:当前项目按内容查询并替换(全局查找替换)

    IDEA中常用的正则

    ^P:搜索以P为开头的文件
    在这里插入图片描述api$:搜索以api为结尾的文件
    在这里插入图片描述.idea:搜索包含字符串idea的文件(.代表任意一个字符,如果单单搜索idea直接用idea即可)
    在这里插入图片描述^pac.*?com.*?util:搜索以pac开头,中间包含com和util的文件
    在这里插入图片描述

    ^p.*?impl;$:匹配以p开头impl;结尾的文件
    在这里插入图片描述:.和*的组合.*表达了中间任意个连起来的字符。(.表示任意一個字符,*表示前面的字符出現任意次。)

    正则表达式

    正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

    常用字符

    • .:任意位置匹配任意字符 。
    • ^: 正则表达式匹配字符串开始位置(从左边第一个开始匹配,即从开头开始匹配,匹配不上则匹配失败)。
    • $:正则表达式匹配字符串结束位置(从右边开始第一个开始匹配,匹配不到即匹配失败)
    • *: runoo*b,可以匹配runob、runoob、runoooooob等,*号代表前面的字符可以不出现,也可出现一次或多次 。
    • +:runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 号代表前面的字符必须至少出现一次(1次或多次)。
    • [ABC]:匹配 […] 中的所有字符,例如 [aeiou] 匹配字符串 “google runoob taobao” 中所有的 e o u a 字母。
    • [^ABC]:匹配除了 […] 中字符的所有字符,例如 [^aeiou] 匹配字符串 “google runoob taobao” 中除了 e o u a 字母的所有字母。
    • [A-Z]:[A-Z] 表示一个区间,匹配所有大写字母,[a-z] 表示所有小写字母。
    • [\s\S]:匹配所有。\s 是匹配所有空白符,包括换行,\S 非空白符,包括换行。
    • \w:匹配字母、数字、下划线。等价于 [A-Za-z0-9_]

    特殊字符

    字符描述
    $匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n’ 或 ‘\r’。要匹配 $ 字符本身,请使用 $。
    ( )标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 ( 和 )。
    *匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。
    +匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+。
    .匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用\ . 。
    [标记一个中括号表达式的开始。要匹配 [,请使用 \[。
    ?匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用\ ?。
    \将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n’ 匹配字符 ‘n’。’\n’ 匹配换行符。序列 ‘\\’ 匹配 “\”,而 ‘\(’ 则匹配 “(”。
    ^匹配输入字符串的开始位置,除非在方括号表达式中使用,当该符号在方括号表达式中使用时,表示不接受该方括号表达式中的字符集合。要匹配 ^ 字符本身,请使用 \^。
    {标记限定符表达式的开始。要匹配 {,请使用 \{。
    |指明两项之间的一个选择。要匹配 |,请使用\ |。

    限定字符

    字符描述
    *匹配前面的子表达式零次或多次。例如,zo* 能匹配 “z” 以及 “zoo”。* 等价于{0,}。
    +匹配前面的子表达式一次或多次。例如,‘zo+’ 能匹配 “zo” 以及 “zoo”,但不能匹配 “z”。+ 等价于 {1,}。
    ?匹配前面的子表达式零次或一次。例如,“do(es)?” 可以匹配 “do” 、 “does” 中的 “does” 、 “doxy” 中的 “do” 。? 等价于 {0,1}。
    {n}n 是一个非负整数。匹配确定的 n 次。例如,‘o{2}’ 不能匹配 “Bob” 中的 ‘o’,但是能匹配 “food” 中的两个 o。
    {n,}n 是一个非负整数。至少匹配n 次。例如,‘o{2,}’ 不能匹配 “Bob” 中的 ‘o’,但能匹配 “foooood” 中的所有 o。‘o{1,}’ 等价于 ‘o+’。‘o{0,}’ 则等价于 ‘o*’。
    {n,m}m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。例如,“o{1,3}” 将匹配 “fooooood” 中的前三个 o。‘o{0,1}’ 等价于 ‘o?’。请注意在逗号和两个数之间不能有空格。

    有空补充。

    以上。

    展开全文
  • 本文章来介绍一下在sql语句中使用正则了,这是我们讲述在mysql中使用mysql正则表达式实例,有需要了解的朋友可以参考一下。代码如下update comment set url=IF(url REGEXP 'test.yahoo.com.cn',REPLACE(url,'...

    本文章来介绍一下在sql语句中使用正则了,这是我们讲述在mysql中使用mysql正则表达式实例,有需要了解的朋友可以参考一下。

    代码如下

    update comment set url=IF(url REGEXP 'test.yahoo.com.cn',REPLACE(url,'www1.hzhuti.com','www.sina.com'),REPLACE(url,'www2.yahoo.com','www.sina.com')) where 1=1;

    update comment set author_url=REPLACE(author_url,'hzhuti','sina') where author_url REGEXP 'www.hzhuti.com';

    $ 匹配字符串的结束部分

    $sql ="SELECT 'fonfo' REGEXP '^fo$' from string_find";

    . 匹配任何字符(包括回车和新行)

    $sql ="SELECT 'fofo' REGEXP '^f.*$' from string_find";

    a* 匹配0或多个a字符的任何序列

    $sql ="SELECT 'Ban' REGEXP '^Ba*n' from string_find";

    a+ 匹配1个或多个a字符的任何序列

    $sql ="SELECT 'Ban' REGEXP '^Ba+n' from string_find";

    a? 匹配0个或1个a字符

    $sql ="SELECT 'Bn' REGEXP '^Ba?n' from string_find";

    de|abc 匹配序列de或abc

    (abc)* 匹配序列abc的0个或多个实例。

    {1}, {2,3} {n}或{m,n}符号提供了编写的更通用方式,能够匹配模式的很多前述原子(或“部分”)。m和n均为整数。

    o a*

    可被写入为a{0,}。

    o a+

    可被写入为a{1,}。

    o a?

    可被写入为a{0,1}。

    更准确地讲,a{n}与a的n个实例准确匹配。a{n,}匹配a的n个或更多实例。a{m,n}匹配a的m~n个实例,包含m和n。

    m和n必须位于0~RE_DUP_MAX(默认为255)的范围内,包含0和RE_DUP_MAX。如果同时给定了m和n,m必须小于或等于

    [a-dX], [^a-dX] 匹配任何是(或不是,如果使用^的话)a、b、c、d或X的字符。两个其他字符之间的“-”字符构成一个范围,与从第1个字符开始到第2个字符之间的所有字符匹配。例如,[0-9]匹配任何十进制数字 。要想包含文字字符“]”,它必须紧跟在开括号“[”之后。要想包含文字字符“-”,它必须首先或最后写入。对于[]对内未定义任何特殊含义的任何字符,仅与其本身匹配。

    为了说明扩展正则表达式如何工作,上面所示的 LIKE 查询在下面使用 REGEX P重写:

    1、为了找出以 “ b ” 开头的名字 , 使用 “ ^ ” 匹配名字的开始并且 “ [bB] ” 匹配小写或大写的 “ b ” :

    > SELECT * FROM pet WHERE name REGEXP "^[bB]";

    2、为了找出以 “ fy ” 结尾的名字,使用 “ $ ” 匹配名字的结尾:

    mysql> SELECT * FROM pet WHERE name REGEXP "fy$";

    3、为了找出包含正好 5 个字符的名字,使用 “ ^ ” 和 “ $ ” 匹配名字的开始和结尾 ,和 5 个 “ . ” 实例在两者之间:

    mysql> SELECT * FROM pet WHERE name REGEXP "^.....$";

    4、你也可以使用 “ {n} ”“ 重复 n 次 ” 操作符重写先前的查询:

    mysql> SELECT * FROM pet WHERE name REGEXP "^.{5}$";

    更多详细内容请查看:

    本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

    本文系统来源:php中文网

    展开全文
  • 前面记录过一篇关于js格式化字符串方法博文:JavaScript格式化字符串函数封装 近日做java项目时也有类似的字符串动态格式化的需求,因此,对照js方法的思路,实现一下java版的。主要是用String.java的replaceAll...
  • src=“images/(.*).png” src=“images/$1.png” th:src=“images/$1.png” $1 取第一个括号内
  • 正则匹配ip地址并替换

    千次阅读 2019-09-18 11:04:53
    正则匹配ip地址并替换 public static String picUrlreplaceIp(String url){ if(!TextUtils.isEmpty(url)){ String patt = "\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"; Pattern r = Pa...
  • 通用的正则检测工具类,包含用户名 手机号 等 支持检测限制emoji字符表情
  • VSCode使用正则表达式进行内容替换

    千次阅读 2018-09-07 15:18:00
    首先描述一下我要达到的目的: 1、源数据: 2、目标数据: ...3、使用的正则表达式如下: (id: (\d+),) id: $2, \n order: $2, 转载于:https://www.cnblogs.com/jerryqi/p/9604828.html...
  • 主要介绍了MySQL中使用replace、regexp进行正则表达式替换的用法,结合具体实例形式分析了replace、regexp正则替换的使用技巧与相关注意事项,需要的朋友可以参考下
  • 【1】如果从行首匹配,可以用"^"来实现,【2】如果从行尾匹配,可以用"$"来实现,在查找内容里面输入"345$"这里"$"表示从行尾匹配【3】正则表达式应用——替换指定内容到行尾原始文本如下面两行abc aaaaa123 abc 444...
  • idea 正则表达式替换

    千次阅读 2019-05-16 20:56:48
    'm','orderNum','s') ,这个函数的调用有很多地方,有一天我们想给这个函数加一个默认参数,让它变成 getView(o,'m','orderNum','s','*'),一个一个加太麻烦了,我们就用 idea 自带的正则表达式替换功能来实现。...
  • Java 中用于 Unicode 的正则表达式数据都是由 Unicode 组织提供的。 Unicode 正则表达式标准(可以找到所有的子属性) http://www.unicode.org/reports/tr18/ 各 Unicode 字符属性的定义,可以用一看看某个字符具有...
  • Python正则表达式在使用中会经常应用到字符串替换的代码。有很多人都不知道如何解决这个问题,下面的代码就告诉你其实这个问题无比的简单,希望你有所收获。 1.替换所有匹配的子串用newstring替换subject中所有与...
  • 试,你会发现,这个正则并不能很好地完成任务,因为18位数字也会匹配上前15位,具 体如下图所示。 出现这个问题的原因,因为大多数正则实现中,多分支选择都是左边优先,所以如果把上面的表达式调换下顺序,就...
  • sed 正则替换

    万次阅读 2016-09-08 10:56:00
    用string替换正则表达式re。  =  打印当前行号码。  #  把注释扩展到下一个换行符以前。  以下的是替换标记  *  g表示行内全面替换。  *  p表示打印行。  *  w表示把行...
  • n=0}' 如果文件格式不正确,请注释 与您要保留或删除的文本相同的行,然后我 将使用perl,将整个文件读入单个字符串, 执行正则表达式匹配并替换该字符串,然后将新字符串写入 一个新文件.这不是那么简单,您需要编写一个...
  • 所幸的是Elliott Hughes已经实现了java的正则表达是分组替换。 下面是它的实现代码: import java.util.regex.*; /** * A Rewriter does a global substitution in the strings passed to its * 'rewrite' method...
  • VS code的搜索、替换正则替换

    千次阅读 2019-09-24 06:20:15
    正则替换 示例一(文件替换) 需要替换的代码: 1 < link rel ="stylesheet" href ="static/cui.css" > 2 < link rel ="stylesheet" href ="static/style.css" > 3 < link rel ="stylesheet...
  • 一旦编译了所需的正则表达式并通过将输入字符串作为参数传递给matcher()方法来检索匹配器对象。您可以使用replaceAll()Matcher类的方法用另一个str4替换输入字符串的所有匹配部分。此方法接受一个字符串(替换字符串)...
  • 是否有一个正则表达式我可以用来查找JSON字符串中的所有数字并用双引号替换它们?例如,在下面的JSON字符串中,我想用双引号替换Id和Phone值 .String jsonString = " [{"FirstName": "abc","Email" : "a@a.com","Id...
  • java正则表达式替换

    2021-03-01 09:01:11
    java正则表达式替换[@more@]//正则表达式替换--尾部为空格或者;String regex = "#w+((s)|(;)|()))";Pattern pattern = Pattern.compile(regex);Matcher matcher = pattern.matcher(sql);StringBuffer sbf = new ...
  • sed是一种流编辑器,它是文本处理中非常有用的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为『模式空间』(pattern space),接着用sed命令处理缓冲区中的...
  • 1. 将括号及内部的所有内容替换为空,例如:  解决办法: :%s/([^)]\+)//g 即匹配以(开头1个或者多个任意字符再以)结尾的字串; 或者:%s/([^)]*)//g 即匹配以(开头0个或者多个任意字符再以)结尾的字串
  • 本文为大家分享了Java正则表达式的匹配、替换、查找和切割操作,有兴趣的朋友可以参考一下import java.util.ArrayList;import java.util.regex.Matcher;import java.util.regex.Pattern;public class test {public ...
  • VS2008 菜单栏→编辑→查找和替换→快速替换 打开查找选项的扩展选择,将“通配符”修改为“正则表达式” 在“查找内容”栏中输入如下正则表达式: ^:b*$\n “替换为”栏不输入任何内容。 点击 “全部替换”。 ...
  • 我有一个字符串可能看起来像这样"myFunc('element','node','elementVersion','ext',12,0,0)"我目前正在...)\)现在我想替换第3个参数的任何字符串.不幸的是,我不能在第三个位置上的任何子字符串上使用stringreplace,...
  • python的字符串提供了replace方法,可以将子串替换成其他字符串,例如下面的代码 name= 'flask_script' name = name.replace('_', '-') print(name) # flask-script 替换的前提是清楚的知道哪些字符串需要被替换,...
  • 正则表达式 replace()替换

    千次阅读 2021-03-01 09:01:11
    标签:定义和用法replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。语法stringObject.replace(regexp,replacement)参数 描述regexp 必需。规定了要替换的模式的 RegExp ...
  • 但是我需要研究学习通过halcon中正则表达实现对csv文件的正则匹配,所以需要看到halcon代码中的每个变量的变换情况,同时好好学习一下正则表达。 在halcon代码中:通过文件读取之后输出出来的是tuple的字符数组类型...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,140
精华内容 12,856
关键字:

替换正则表达